Browse Source
Merge pull request #919 from lioncash/sign
gl_shader_manager: Amend sign differences in an assertion comparison in SetShaderUniformBlockBinding()
pull/15/merge
bunnei
8 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
9 additions and
8 deletions
-
src/video_core/renderer_opengl/gl_shader_manager.cpp
|
|
|
@ -13,15 +13,16 @@ namespace Impl { |
|
|
|
static void SetShaderUniformBlockBinding(GLuint shader, const char* name, |
|
|
|
Maxwell3D::Regs::ShaderStage binding, |
|
|
|
size_t expected_size) { |
|
|
|
GLuint ub_index = glGetUniformBlockIndex(shader, name); |
|
|
|
if (ub_index != GL_INVALID_INDEX) { |
|
|
|
const GLuint ub_index = glGetUniformBlockIndex(shader, name); |
|
|
|
if (ub_index == GL_INVALID_INDEX) { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
GLint ub_size = 0; |
|
|
|
glGetActiveUniformBlockiv(shader, ub_index, GL_UNIFORM_BLOCK_DATA_SIZE, &ub_size); |
|
|
|
ASSERT_MSG(ub_size == expected_size, |
|
|
|
"Uniform block size did not match! Got {}, expected {}", |
|
|
|
static_cast<int>(ub_size), expected_size); |
|
|
|
ASSERT_MSG(static_cast<size_t>(ub_size) == expected_size, |
|
|
|
"Uniform block size did not match! Got {}, expected {}", ub_size, expected_size); |
|
|
|
glUniformBlockBinding(shader, ub_index, static_cast<GLuint>(binding)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void SetShaderUniformBlockBindings(GLuint shader) { |
|
|
|
|