usPosition = uModelPrevious * position;
            
            vPosition = worldPosition.xyz;
            vUV = uv;
            vNormal = (uModel * vec4(normal.xyz, 0.0)).xyz;
            
            vec4 clipPosition = viewProj * worldPosition;
            vec4 previousClipPosition = viewProj * previousPosition;
            vec3 velocity = worldPosition.xyz - previousPosition.xyz;
            
            if (dot(vNormal, velocity) >= 0.0) {
                gl_Position = clipPosition;
            } else