Rename ChipmunkPhysics2D and JoltPhysics3D to Physics[2D|3D]
This commit is contained in:
60
src/Nazara/Physics3D/JoltHelper.inl
Normal file
60
src/Nazara/Physics3D/JoltHelper.inl
Normal file
@@ -0,0 +1,60 @@
|
||||
// Copyright (C) 2024 Jérôme "SirLynix" Leclercq (lynix680@gmail.com)
|
||||
// This file is part of the "Nazara Engine - Physics3D module"
|
||||
// For conditions of distribution and use, see copyright notice in Config.hpp
|
||||
|
||||
#include <Nazara/Physics3D/Debug.hpp>
|
||||
|
||||
namespace Nz
|
||||
{
|
||||
Quaternionf FromJolt(const JPH::Quat& quat)
|
||||
{
|
||||
return Quaternionf(quat.GetW(), quat.GetX(), quat.GetY(), quat.GetZ());
|
||||
}
|
||||
|
||||
Matrix4f FromJolt(const JPH::Mat44& transform)
|
||||
{
|
||||
const JPH::Vec4& row1 = transform.GetColumn4(0);
|
||||
const JPH::Vec4& row2 = transform.GetColumn4(1);
|
||||
const JPH::Vec4& row3 = transform.GetColumn4(2);
|
||||
const JPH::Vec4& row4 = transform.GetColumn4(3);
|
||||
|
||||
return Matrix4f(
|
||||
row1.GetX(), row1.GetY(), row1.GetZ(), row1.GetW(),
|
||||
row2.GetX(), row2.GetY(), row2.GetZ(), row2.GetW(),
|
||||
row3.GetX(), row3.GetY(), row3.GetZ(), row3.GetW(),
|
||||
row4.GetX(), row4.GetY(), row4.GetZ(), row4.GetW());
|
||||
}
|
||||
|
||||
inline Vector3f FromJolt(const JPH::Vec3& vec)
|
||||
{
|
||||
return Vector3f(vec.GetX(), vec.GetY(), vec.GetZ());
|
||||
}
|
||||
|
||||
inline JPH::Mat44 ToJolt(const Matrix4f& transformMatrix)
|
||||
{
|
||||
JPH::Mat44 transform;
|
||||
transform.SetColumn4(0, JPH::Vec4{ transformMatrix.m11, transformMatrix.m12, transformMatrix.m13, transformMatrix.m14 });
|
||||
transform.SetColumn4(1, JPH::Vec4{ transformMatrix.m21, transformMatrix.m22, transformMatrix.m23, transformMatrix.m24 });
|
||||
transform.SetColumn4(2, JPH::Vec4{ transformMatrix.m31, transformMatrix.m32, transformMatrix.m33, transformMatrix.m34 });
|
||||
transform.SetColumn4(3, JPH::Vec4{ transformMatrix.m41, transformMatrix.m42, transformMatrix.m43, transformMatrix.m44 });
|
||||
|
||||
return transform;
|
||||
}
|
||||
|
||||
inline JPH::Quat ToJolt(const Quaternionf& quaternion)
|
||||
{
|
||||
return JPH::Quat(quaternion.x, quaternion.y, quaternion.z, quaternion.w);
|
||||
}
|
||||
|
||||
inline JPH::Vec3 ToJolt(const Vector3f& vec)
|
||||
{
|
||||
return JPH::Vec3(vec.x, vec.y, vec.z);
|
||||
}
|
||||
|
||||
inline JPH::Vec4 ToJolt(const Vector4f& vec)
|
||||
{
|
||||
return JPH::Vec4(vec.x, vec.y, vec.z, vec.w);
|
||||
}
|
||||
}
|
||||
|
||||
#include <Nazara/Physics3D/DebugOff.hpp>
|
||||
Reference in New Issue
Block a user