diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2021-07-14 08:48:30 +0200 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-23 03:51:40 +0200 |
commit | e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5 (patch) | |
tree | ac6ddd37fd94fd2ccd693b4da0443ff28b75008d /src/video_core/renderer_opengl/gl_compute_pipeline.cpp | |
parent | shader: Implement ISETP.X (diff) | |
download | yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar.gz yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar.bz2 yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar.lz yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar.xz yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.tar.zst yuzu-e1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5.zip |
Diffstat (limited to 'src/video_core/renderer_opengl/gl_compute_pipeline.cpp')
-rw-r--r-- | src/video_core/renderer_opengl/gl_compute_pipeline.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/video_core/renderer_opengl/gl_compute_pipeline.cpp b/src/video_core/renderer_opengl/gl_compute_pipeline.cpp index c63e87a56..aa1cc592f 100644 --- a/src/video_core/renderer_opengl/gl_compute_pipeline.cpp +++ b/src/video_core/renderer_opengl/gl_compute_pipeline.cpp @@ -46,17 +46,13 @@ ComputePipeline::ComputePipeline(const Device& device, TextureCache& texture_cac kepler_compute{kepler_compute_}, program_manager{program_manager_}, info{info_} { switch (device.GetShaderBackend()) { case Settings::ShaderBackend::GLSL: - source_program.handle = glCreateProgram(); - AttachShader(GL_COMPUTE_SHADER, source_program.handle, code); - LinkProgram(source_program.handle); + source_program = CreateProgram(code, GL_COMPUTE_SHADER); break; case Settings::ShaderBackend::GLASM: assembly_program = CompileProgram(code, GL_COMPUTE_PROGRAM_NV); break; case Settings::ShaderBackend::SPIRV: - source_program.handle = glCreateProgram(); - AttachShader(GL_COMPUTE_SHADER, source_program.handle, code_v); - LinkProgram(source_program.handle); + source_program = CreateProgram(code_v, GL_COMPUTE_SHADER); break; } std::copy_n(info.constant_buffer_used_sizes.begin(), uniform_buffer_sizes.size(), @@ -154,7 +150,7 @@ void ComputePipeline::Configure() { if (assembly_program.handle != 0) { program_manager.BindComputeAssemblyProgram(assembly_program.handle); } else { - program_manager.BindProgram(source_program.handle); + program_manager.BindComputeProgram(source_program.handle); } buffer_cache.UnbindComputeTextureBuffers(); size_t texbuf_index{}; |