summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_compute_pipeline.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-07-14 08:48:30 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:40 +0200
commite1ed218b418cd1ed94f6f25ccd0db86b63bd6bb5 (patch)
treeac6ddd37fd94fd2ccd693b4da0443ff28b75008d /src/video_core/renderer_opengl/gl_compute_pipeline.cpp
parentshader: Implement ISETP.X (diff)
downloadyuzu-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.cpp10
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{};