diff --git a/src/engine/renderer/tr_shader.cpp b/src/engine/renderer/tr_shader.cpp index 1bb29c2451..23c6b9d033 100644 --- a/src/engine/renderer/tr_shader.cpp +++ b/src/engine/renderer/tr_shader.cpp @@ -5223,6 +5223,13 @@ static void FinishStages() // We should cancel overBrightBits if there is no light stage. stage->shaderHasNoLight = shaderHasNoLight; + // We should not cancel overbright on decals. + if ( shader.sort == Util::ordinal(shaderSort_t::SS_DECAL) ) + { + // HACK: Reuse that boolean. + stage->shaderHasNoLight = false; + } + // Available textures. bool hasNormalMap = stage->bundle[ TB_NORMALMAP ].image[ 0 ] != nullptr; bool hasHeightMap = stage->bundle[ TB_HEIGHTMAP ].image[ 0 ] != nullptr;