Browse Source

gl_shader_cache: Set GL_PROGRAM_SEPARABLE to dumped shaders

i965 (and probably all mesa drivers) require GL_PROGRAM_SEPARABLE when using
glProgramBinary. This is probably required by the standard but it's ignored by
permisive proprietary drivers.
nce_cpp
ReinUsesLisp 7 years ago
parent
commit
66a3760a71
  1. 1
      src/video_core/renderer_opengl/gl_shader_cache.cpp

1
src/video_core/renderer_opengl/gl_shader_cache.cpp

@ -405,6 +405,7 @@ CachedProgram ShaderCacheOpenGL::GeneratePrecompiledProgram(
CachedProgram shader = std::make_shared<OGLProgram>();
shader->handle = glCreateProgram();
glProgramParameteri(shader->handle, GL_PROGRAM_SEPARABLE, GL_TRUE);
glProgramBinary(shader->handle, dump.binary_format, dump.binary.data(),
static_cast<GLsizei>(dump.binary.size()));

Loading…
Cancel
Save