|
@@ -677,23 +677,24 @@ reflect_uniform(int i, char *name_buffer, GLsizei name_buflen) {
|
|
|
_glgsg->_glGetActiveUniform(_glsl_program, i, name_buflen, NULL, ¶m_size, ¶m_type, name_buffer);
|
|
_glgsg->_glGetActiveUniform(_glsl_program, i, name_buflen, NULL, ¶m_size, ¶m_type, name_buffer);
|
|
|
GLint p = _glgsg->_glGetUniformLocation(_glsl_program, name_buffer);
|
|
GLint p = _glgsg->_glGetUniformLocation(_glsl_program, name_buffer);
|
|
|
|
|
|
|
|
|
|
+ if (GLCAT.is_debug()) {
|
|
|
|
|
+ GLCAT.debug()
|
|
|
|
|
+ << "Active uniform " << name_buffer << " with size " << param_size
|
|
|
|
|
+ << " and type 0x" << hex << param_type << dec
|
|
|
|
|
+ << " is bound to location " << p << "\n";
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
// Some NVidia drivers (361.43 for example) (incorrectly) include "internal"
|
|
// Some NVidia drivers (361.43 for example) (incorrectly) include "internal"
|
|
|
// uniforms in the list starting with "_main_" (for example,
|
|
// uniforms in the list starting with "_main_" (for example,
|
|
|
// "_main_0_gp5fp[0]") we need to skip those, because we don't know anything
|
|
// "_main_0_gp5fp[0]") we need to skip those, because we don't know anything
|
|
|
// about them
|
|
// about them
|
|
|
if (strncmp(name_buffer, "_main_", 6) == 0) {
|
|
if (strncmp(name_buffer, "_main_", 6) == 0) {
|
|
|
- GLCAT.warning() << "Ignoring uniform " << name_buffer << " which may be generated by buggy Nvidia driver.\n";
|
|
|
|
|
|
|
+ if (GLCAT.is_debug()) {
|
|
|
|
|
+ GLCAT.debug() << "Ignoring uniform " << name_buffer << " which may be generated by buggy Nvidia driver.\n";
|
|
|
|
|
+ }
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (GLCAT.is_debug()) {
|
|
|
|
|
- GLCAT.debug()
|
|
|
|
|
- << "Active uniform " << name_buffer << " with size " << param_size
|
|
|
|
|
- << " and type 0x" << hex << param_type << dec
|
|
|
|
|
- << " is bound to location " << p << "\n";
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
if (p < 0) {
|
|
if (p < 0) {
|
|
|
// Special meaning, or it's in a uniform block. Let it go.
|
|
// Special meaning, or it's in a uniform block. Let it go.
|
|
|
return;
|
|
return;
|