From 981c44f636113d798993f7e8b86f32a291bc62c8 Mon Sep 17 00:00:00 2001 From: rdb Date: Wed, 26 Dec 2018 23:31:48 +0100 Subject: [PATCH] glgsg: fix misleading errors from p3d_LightSource[].shadowMap --- panda/src/glstuff/glShaderContext_src.cxx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/panda/src/glstuff/glShaderContext_src.cxx b/panda/src/glstuff/glShaderContext_src.cxx index bf6c6097fa..ae7a845efc 100644 --- a/panda/src/glstuff/glShaderContext_src.cxx +++ b/panda/src/glstuff/glShaderContext_src.cxx @@ -2797,14 +2797,24 @@ update_shader_texture_bindings(ShaderContext *prev) { } if (tex->get_texture_type() != spec._desired_type) { - if (id != nullptr) { + switch (spec._part) { + case Shader::STO_named_input: GLCAT.error() << "Sampler type of GLSL shader input '" << *id << "' does not " "match type of texture " << *tex << ".\n"; - } else { + break; + + case Shader::STO_stage_i: GLCAT.error() << "Sampler type of GLSL shader input p3d_Texture" << spec._stage << " does not match type of texture " << *tex << ".\n"; + break; + + case Shader::STO_light_i_shadow_map: + GLCAT.error() + << "Sampler type of GLSL shader input p3d_LightSource[" << spec._stage + << "].shadowMap does not match type of texture " << *tex << ".\n"; + break; } // TODO: also check whether shadow sampler textures have shadow filter // enabled.