Browse Source

Fix material shader inputs not being updated properly

rdb 9 years ago
parent
commit
78bf339c41
2 changed files with 2 additions and 2 deletions
  1. 1 1
      panda/src/glstuff/glShaderContext_src.cxx
  2. 1 1
      panda/src/gobj/shader.cxx

+ 1 - 1
panda/src/glstuff/glShaderContext_src.cxx

@@ -901,7 +901,7 @@ reflect_uniform(int i, char *name_buffer, GLsizei name_buflen) {
       bind._func = Shader::SMF_first;
       bind._func = Shader::SMF_first;
       bind._part[0] = Shader::SMO_attr_material;
       bind._part[0] = Shader::SMO_attr_material;
       bind._arg[0] = NULL;
       bind._arg[0] = NULL;
-      bind._dep[0] = Shader::SSD_general | Shader::SSD_material;
+      bind._dep[0] = Shader::SSD_general | Shader::SSD_material | Shader::SSD_frame;
       bind._part[1] = Shader::SMO_identity;
       bind._part[1] = Shader::SMO_identity;
       bind._arg[1] = NULL;
       bind._arg[1] = NULL;
       bind._dep[1] = Shader::SSD_NONE;
       bind._dep[1] = Shader::SSD_NONE;

+ 1 - 1
panda/src/gobj/shader.cxx

@@ -376,7 +376,7 @@ cp_dependency(ShaderMatInput inp) {
     return SSD_NONE;
     return SSD_NONE;
   }
   }
   if (inp == SMO_attr_material || inp == SMO_attr_material2) {
   if (inp == SMO_attr_material || inp == SMO_attr_material2) {
-    dep |= SSD_material;
+    dep |= SSD_material | SSD_frame;
   }
   }
   if (inp == SMO_attr_color) {
   if (inp == SMO_attr_color) {
     dep |= SSD_color;
     dep |= SSD_color;