summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_shader_cache.cpp
diff options
context:
space:
mode:
authorFeng Chen <vonchenplus@gmail.com>2021-11-19 08:32:53 +0100
committervonchenplus <vonchenplus@gmail.com>2021-11-19 15:53:58 +0100
commit4dd85f86a89338ff84d05a3981c14f6de1be4606 (patch)
treeb2a48b24bf216a325e62f5e363bc98b41de84444 /src/video_core/renderer_opengl/gl_shader_cache.cpp
parentMerge pull request #7349 from ameerj/ogl-convert-image (diff)
downloadyuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar.gz
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar.bz2
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar.lz
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar.xz
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.tar.zst
yuzu-4dd85f86a89338ff84d05a3981c14f6de1be4606.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_shader_cache.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_cache.cpp b/src/video_core/renderer_opengl/gl_shader_cache.cpp
index 42ef67628..310cda6d8 100644
--- a/src/video_core/renderer_opengl/gl_shader_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_cache.cpp
@@ -44,6 +44,7 @@ using Shader::Backend::GLSL::EmitGLSL;
using Shader::Backend::SPIRV::EmitSPIRV;
using Shader::Maxwell::MergeDualVertexPrograms;
using Shader::Maxwell::TranslateProgram;
+using Shader::Maxwell::ConvertLegacyToGeneric;
using VideoCommon::ComputeEnvironment;
using VideoCommon::FileEnvironment;
using VideoCommon::GenericEnvironment;
@@ -462,12 +463,14 @@ std::unique_ptr<GraphicsPipeline> ShaderCache::CreateGraphicsPipeline(
MakeRuntimeInfo(key, program, previous_program, glasm_use_storage_buffers, use_glasm)};
switch (device.GetShaderBackend()) {
case Settings::ShaderBackend::GLSL:
+ ConvertLegacyToGeneric(program, runtime_info);
sources[stage_index] = EmitGLSL(profile, runtime_info, program, binding);
break;
case Settings::ShaderBackend::GLASM:
sources[stage_index] = EmitGLASM(profile, runtime_info, program, binding);
break;
case Settings::ShaderBackend::SPIRV:
+ ConvertLegacyToGeneric(program, runtime_info);
sources_spirv[stage_index] = EmitSPIRV(profile, runtime_info, program, binding);
break;
}