diff --git a/Source/Engine/Level/Actors/Camera.cpp b/Source/Engine/Level/Actors/Camera.cpp index e5d770343..2ff9c928e 100644 --- a/Source/Engine/Level/Actors/Camera.cpp +++ b/Source/Engine/Level/Actors/Camera.cpp @@ -237,7 +237,10 @@ Ray Camera::ConvertMouseToRay(const Float2& mousePosition, const Viewport& viewp viewport.Unproject(nearPoint, ivp, nearPoint); viewport.Unproject(farPoint, ivp, farPoint); - return Ray(nearPoint, Vector3::Normalize(farPoint - nearPoint)); + Vector3 dir = Vector3::Normalize(farPoint - nearPoint); + if (dir.IsZero()) + return Ray::Identity; + return Ray(nearPoint, dir); } Viewport Camera::GetViewport() const