fog clipping: properly invalidate projection matrix

This commit is contained in:
Moritz Zwerger 2024-03-01 16:01:33 +01:00
parent 901c158b80
commit d58885a14b
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
2 changed files with 7 additions and 3 deletions

View File

@ -127,9 +127,7 @@ class MatrixHandler(
this.matrixPosition = matrixPosition this.matrixPosition = matrixPosition
this.front = front this.front = front
val cameraBlockPosition = eyePosition.blockPosition val cameraBlockPosition = eyePosition.blockPosition
if (fov != previousFOV) { calculateProjectionMatrix(fov)
calculateProjectionMatrix(fov)
}
previousFOV = fov previousFOV = fov
updateFront(front) updateFront(front)
@ -179,4 +177,8 @@ class MatrixHandler(
} }
} }
} }
fun invalidate() {
upToDate = false
}
} }

View File

@ -78,6 +78,7 @@ class FogManager(
save() save()
this.options = options this.options = options
state.revision++ state.revision++
context.camera.matrixHandler.invalidate()
} }
private fun save() { private fun save() {
@ -108,6 +109,7 @@ class FogManager(
} }
state.revision++ state.revision++
context.camera.matrixHandler.invalidate()
} }