summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_shader_cache.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2019-08-29 21:59:17 +0200
committerGitHub <noreply@github.com>2019-08-29 21:59:17 +0200
commita67c4e6e02132a33bb8c6097ee828112ed654c88 (patch)
tree225dddcfa9562ce652b7f5497034ee0d265c5324 /src/video_core/renderer_opengl/gl_shader_cache.cpp
parentRevert "externals: Update FMT to 6.0.0" (diff)
parentgl_shader_decompiler: Rename bufferImage to imageBuffer (diff)
downloadyuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar.gz
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar.bz2
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar.lz
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar.xz
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.tar.zst
yuzu-a67c4e6e02132a33bb8c6097ee828112ed654c88.zip
Diffstat (limited to 'src/video_core/renderer_opengl/gl_shader_cache.cpp')
-rw-r--r--src/video_core/renderer_opengl/gl_shader_cache.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_cache.cpp b/src/video_core/renderer_opengl/gl_shader_cache.cpp
index a32a7e984..c39626850 100644
--- a/src/video_core/renderer_opengl/gl_shader_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_cache.cpp
@@ -249,20 +249,24 @@ CachedProgram SpecializeShader(const std::string& code, const GLShader::ShaderEn
if (!texture_buffer_usage.test(i)) {
continue;
}
- source += fmt::format("#define SAMPLER_{}_IS_BUFFER", i);
+ source += fmt::format("#define SAMPLER_{}_IS_BUFFER\n", i);
+ }
+ if (texture_buffer_usage.any()) {
+ source += '\n';
}
if (program_type == ProgramType::Geometry) {
const auto [glsl_topology, debug_name, max_vertices] =
GetPrimitiveDescription(primitive_mode);
- source += "layout (" + std::string(glsl_topology) + ") in;\n";
+ source += "layout (" + std::string(glsl_topology) + ") in;\n\n";
source += "#define MAX_VERTEX_INPUT " + std::to_string(max_vertices) + '\n';
}
if (program_type == ProgramType::Compute) {
source += "layout (local_size_variable) in;\n";
}
+ source += '\n';
source += code;
OGLShader shader;