glgsg: fix misleading errors from p3d_LightSource[].shadowMap

This commit is contained in:
rdb 2018-12-26 23:31:48 +01:00
parent 669a655366
commit 981c44f636

View File

@ -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.