diff --git a/include/Nazara/Math/Quaternion.inl b/include/Nazara/Math/Quaternion.inl index af2835d5d..3ce61972b 100644 --- a/include/Nazara/Math/Quaternion.inl +++ b/include/Nazara/Math/Quaternion.inl @@ -288,8 +288,9 @@ namespace Nz } else { + T norm = std::sqrt(from.GetSquaredLength() * to.GetSquaredLength()); Vector3 crossProduct = from.CrossProduct(to); - Set(T(1) + dot, crossProduct.x, crossProduct.y, crossProduct.z); + Set(norm + dot, crossProduct.x, crossProduct.y, crossProduct.z); return Normalize(); } }