Browse Source

OpenGL: Check if uniform block exists before updating it (#2581)

nce_cpp
Jannik Vogel 9 years ago
committed by Yuri Kunde Schlesner
parent
commit
4dc66fd320
  1. 5
      src/video_core/renderer_opengl/gl_rasterizer.cpp

5
src/video_core/renderer_opengl/gl_rasterizer.cpp

@ -1071,8 +1071,8 @@ void RasterizerOpenGL::SetShader() {
current_shader = shader_cache.emplace(config, std::move(shader)).first->second.get(); current_shader = shader_cache.emplace(config, std::move(shader)).first->second.get();
unsigned int block_index =
glGetUniformBlockIndex(current_shader->shader.handle, "shader_data");
GLuint block_index = glGetUniformBlockIndex(current_shader->shader.handle, "shader_data");
if (block_index != GL_INVALID_INDEX) {
GLint block_size; GLint block_size;
glGetActiveUniformBlockiv(current_shader->shader.handle, block_index, glGetActiveUniformBlockiv(current_shader->shader.handle, block_index,
GL_UNIFORM_BLOCK_DATA_SIZE, &block_size); GL_UNIFORM_BLOCK_DATA_SIZE, &block_size);
@ -1104,6 +1104,7 @@ void RasterizerOpenGL::SetShader() {
SyncFogColor(); SyncFogColor();
} }
} }
}
void RasterizerOpenGL::SyncCullMode() { void RasterizerOpenGL::SyncCullMode() {
const auto& regs = Pica::g_state.regs; const auto& regs = Pica::g_state.regs;

Loading…
Cancel
Save