AdamsLair / duality

a 2D Game Development Framework
https://adamslair.github.io/duality
MIT License
1.4k stars 289 forks source link

Prevent FarZ-Property of the camera component to be 0. #753

Closed ChristianGreiner closed 4 years ago

ChristianGreiner commented 4 years ago

An ArgumentOutOfRange-Exception gets thrown when you set the FarZ-Property (Camera-Component) to 0.

CoreError:   There was an error while RenderSetup "Default\RenderSetup\Default" was rendering Scene "Data\Scenes\TestScene": ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: zFar
CallStack:
   at Duality.Matrix4.CreatePerspectiveOffCenter(Single left, Single right, Single bottom, Single top, Single zNear, Single zFar, Matrix4& result) in C:\projects\duality\Source\Core\Primitives\Math\Matrix4.cs:line 886
   at Duality.Drawing.DrawDevice.UpdateProjectionMatrix() in C:\projects\duality\Source\Core\Duality\Drawing\DrawDevice.cs:line 772
   at Duality.Drawing.DrawDevice.UpdateMatrices() in C:\projects\duality\Source\Core\Duality\Drawing\DrawDevice.cs:line 699
   at Duality.Resources.RenderSetup.RenderPointOfView(Scene scene, DrawDevice drawDevice, Rect viewportRect, Vector2 imageSize) in C:\projects\duality\Source\Core\Duality\Resources\RenderSetup\RenderSetup.cs:line 206
   at Duality.Components.Camera.Render(Rect viewportRect, Vector2 imageSize) in C:\projects\duality\Source\Core\Duality\Components\Camera.cs:line 226
   at Duality.Resources.RenderSetup.OnRenderScene(Scene scene, ContentRef`1 target, Rect viewportRect, Vector2 imageSize) in C:\projects\duality\Source\Core\Duality\Resources\RenderSetup\RenderSetup.cs:line 463
   at Duality.Resources.RenderSetup.RenderScene(Scene scene, ContentRef`1 target, Rect viewportRect, Vector2 imageSize) in C:\projects\duality\Source\Core\Duality\Resources\RenderSetup\RenderSetup.cs:line 173
ilexp commented 4 years ago

Fixed by @childsluke via adjusting valid editor value ranges.