diff --git a/projects/voxelization/src/ShadowMapping.cpp b/projects/voxelization/src/ShadowMapping.cpp
index 1e58b3c8f135f01e7467e4f8bc6aae4d1d8b1f40..9c81aa097a0dd4d7817927776ac3308efef38467 100644
--- a/projects/voxelization/src/ShadowMapping.cpp
+++ b/projects/voxelization/src/ShadowMapping.cpp
@@ -115,6 +115,10 @@ glm::mat4 computeShadowViewProjectionMatrix(
 	getMinMaxView(voxelVolumeCorners);
 
 	glm::vec3 scale  = glm::vec3(2) / (maxView - minView);
+
+	// rotationaly invariant to avoid swimming when moving camera
+	scale = glm::vec3(glm::max(glm::max(scale.x, scale.y), scale.z));
+
 	glm::vec3 offset = -0.5f * (maxView + minView) * scale;
 
 	glm::mat4 crop(1);