]> git.lizzy.rs Git - minetest.git/commitdiff
Fix shadow rendering with filtering disabled
authorDmitry Kostenko <codeforsmile@gmail.com>
Tue, 9 Nov 2021 23:31:02 +0000 (00:31 +0100)
committerx2048 <codeforsmile@gmail.com>
Mon, 7 Mar 2022 22:45:26 +0000 (23:45 +0100)
client/shaders/nodes_shader/opengl_fragment.glsl
client/shaders/object_shader/opengl_fragment.glsl

index d3194090cda7ab3b9ad2ff3942c139a32bc423e8..55c3feac78c9c47ab1fbf2dc6ea0a30b978d140f 100644 (file)
@@ -187,6 +187,9 @@ float getPenumbraRadius(sampler2D shadowsampler, vec2 smTexCoord, float realDist
 
        if (PCFBOUND == 0.0) return 0.0;
        // Return fast if sharp shadows are requested
+       if (PCFBOUND == 0.0)
+               return 0.0;
+
        if (SOFTSHADOWRADIUS <= 1.0) {
                perspectiveFactor = getDeltaPerspectiveFactor(baseLength);
                return max(2 * length(smTexCoord.xy) * 2048 / f_textureresolution / pow(perspectiveFactor, 3), SOFTSHADOWRADIUS);
index 0dcbbd32186815d538918a9dae02423cad1a6190..3cbf4347a1e9ff3e417049ec1c602f630d0fcd8e 100644 (file)
@@ -181,6 +181,9 @@ float getPenumbraRadius(sampler2D shadowsampler, vec2 smTexCoord, float realDist
        float perspectiveFactor;
 
        // Return fast if sharp shadows are requested
+       if (PCFBOUND == 0.0)
+               return 0.0;
+               
        if (SOFTSHADOWRADIUS <= 1.0) {
                perspectiveFactor = getDeltaPerspectiveFactor(baseLength);
                return max(2 * length(smTexCoord.xy) * 2048 / f_textureresolution / pow(perspectiveFactor, 3), SOFTSHADOWRADIUS);