From cc1b3237a54b653bc47fa2f6d661fa9369336864 Mon Sep 17 00:00:00 2001 From: Antoine Pilote Date: Tue, 11 Jul 2023 00:39:09 -0400 Subject: [PATCH] Partial fix --- Nuake/src/Core/Maths.cpp | 5 +++-- Nuake/src/Rendering/Camera.cpp | 2 +- Nuake/src/Scene/Systems/TransformSystem.cpp | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Nuake/src/Core/Maths.cpp b/Nuake/src/Core/Maths.cpp index d8e19a87..563770d1 100644 --- a/Nuake/src/Core/Maths.cpp +++ b/Nuake/src/Core/Maths.cpp @@ -4,10 +4,11 @@ using namespace Nuake; Quat Nuake::QuatFromEuler(float x, float y, float z) { - return Quat(Vector3(Rad(x), Rad(y), Rad(z))); + return Quat(Vector3(Rad(z), Rad(y), Rad(x))); } Vector3 Nuake::QuatToDirection(const Quat& quat) { - return quat * Vector3(0, 0, -1); + //return quat * Vector3(0, 0, -1); + return glm::rotate(glm::inverse(quat), glm::vec3(-1.0, 0.0, 0.0)); } \ No newline at end of file diff --git a/Nuake/src/Rendering/Camera.cpp b/Nuake/src/Rendering/Camera.cpp index 42557112..5b3249e6 100644 --- a/Nuake/src/Rendering/Camera.cpp +++ b/Nuake/src/Rendering/Camera.cpp @@ -52,7 +52,7 @@ namespace Nuake //cam->cameraRight = glm::normalize(glm::cross(cam->up, cam->cameraFront)); Direction = glm::normalize(direction); Right = glm::normalize(glm::cross(Vector3(0, 1, 0), Direction)); - //Up = glm::normalize(glm::cross(Direction, Right)) + //Up = glm::normalize(glm::cross(Direction, Right)); } Vector3 Camera::GetTranslation() { diff --git a/Nuake/src/Scene/Systems/TransformSystem.cpp b/Nuake/src/Scene/Systems/TransformSystem.cpp index 6ddb3740..c9e776ae 100644 --- a/Nuake/src/Scene/Systems/TransformSystem.cpp +++ b/Nuake/src/Scene/Systems/TransformSystem.cpp @@ -110,7 +110,8 @@ namespace Nuake camera.CameraInstance->Translation = transform.GlobalTranslation; const auto& globalRotation = transform.GetGlobalRotation(); - const auto& forward = QuatToDirection(globalRotation); + auto& forward = QuatToDirection(globalRotation); + //forward *= -1.0; camera.CameraInstance->SetDirection(forward); } }