diff --git a/source/common/rendering/hwrenderer/data/hw_renderstate.h b/source/common/rendering/hwrenderer/data/hw_renderstate.h index b61e23733..c52ef83ab 100644 --- a/source/common/rendering/hwrenderer/data/hw_renderstate.h +++ b/source/common/rendering/hwrenderer/data/hw_renderstate.h @@ -578,7 +578,7 @@ public: mMaterial.mChanged = true; mTextureModeFlags = mat->GetLayerFlags(); auto scale = mat->GetDetailScale(); - mStreamData.uDetailParms = { scale.X, scale.Y, 0, 0 }; + mStreamData.uDetailParms = { scale.X, scale.Y, 2, 0 }; } void SetMaterial(FGameTexture* tex, EUpscaleFlags upscalemask, int scaleflags, int clampmode, int translation, int overrideshader) diff --git a/wadsrc/static/shaders/glsl/main.fp b/wadsrc/static/shaders/glsl/main.fp index d12d8affd..aa499eb8b 100644 --- a/wadsrc/static/shaders/glsl/main.fp +++ b/wadsrc/static/shaders/glsl/main.fp @@ -572,7 +572,7 @@ void SetMaterialProps(inout Material material, vec2 texCoord) if ((uTextureMode & TEXF_Detailmap) != 0) { vec4 Detail = texture(detailtexture, texCoord.st * uDetailParms.xy) * uDetailParms.z; - material.Base *= Detail; + material.Base.rgb *= Detail.rgb; } if ((uTextureMode & TEXF_Glowmap) != 0)