]> git.lizzy.rs Git - minetest.git/commitdiff
Reduce shadow jitter (#11668)
authorlhofhansl <larsh@apache.org>
Tue, 5 Oct 2021 19:54:01 +0000 (12:54 -0700)
committerGitHub <noreply@github.com>
Tue, 5 Oct 2021 19:54:01 +0000 (21:54 +0200)
src/client/shadows/dynamicshadows.cpp

index 0c7eea0e74339a6a39a71615f596645c8652ba3e..6ef5a4f1db4e60613cc75b087475b26c95f9355e 100644 (file)
@@ -65,24 +65,7 @@ void DirectionalLight::createSplitMatrices(const Camera *cam)
        // boundVec.getLength();
        float vvolume = radius * 2.0f;
 
-       float texelsPerUnit = getMapResolution() / vvolume;
-       m4f mTexelScaling;
-       mTexelScaling.setScale(texelsPerUnit);
-
-       m4f mLookAt, mLookAtInv;
-
-       mLookAt.buildCameraLookAtMatrixLH(v3f(0.0f, 0.0f, 0.0f), -direction, v3f(0.0f, 1.0f, 0.0f));
-
-       mLookAt *= mTexelScaling;
-       mLookAtInv = mLookAt;
-       mLookAtInv.makeInverse();
-
        v3f frustumCenter = newCenter;
-       mLookAt.transformVect(frustumCenter);
-       frustumCenter.X = floorf(frustumCenter.X); // clamp to texel increment
-       frustumCenter.Y = floorf(frustumCenter.Y); // clamp to texel increment
-       frustumCenter.Z = floorf(frustumCenter.Z);
-       mLookAtInv.transformVect(frustumCenter);
        // probar radius multipliacdor en funcion del I, a menor I mas multiplicador
        v3f eye_displacement = direction * vvolume;