3#include <JoltPlugin/JoltPluginDLL.h>
5#include <Foundation/Math/Color.h>
6#include <Foundation/Math/Transform.h>
7#include <Foundation/SimdMath/SimdTransform.h>
8#include <Jolt/Core/Color.h>
9#include <Jolt/Math/Float3.h>
10#include <Jolt/Math/Vec3.h>
11#include <Jolt/Math/Vec4.h>
13namespace plJoltConversionUtils
15 PL_ALWAYS_INLINE
plVec3 ToVec3(
const JPH::Vec3& v)
17 return plVec3(v.mF32[0], v.mF32[1], v.mF32[2]);
20 PL_ALWAYS_INLINE
plVec3 ToVec3(
const JPH::Float3& v)
22 return reinterpret_cast<const plVec3&
>(v);
25 PL_ALWAYS_INLINE
plColor ToColor(
const JPH::ColorArg& c)
27 const JPH::Vec4 v4 = c.ToVec4();
28 return reinterpret_cast<const plColor&
>(v4);
31 PL_ALWAYS_INLINE
plSimdVec4f ToSimdVec3(
const JPH::Vec3& v)
33 return plSimdVec4f(v.mF32[0], v.mF32[1], v.mF32[2], v.mF32[3]);
36 PL_ALWAYS_INLINE JPH::Vec3 ToVec3(
const plVec3& v)
38 return JPH::Vec3(v.x, v.y, v.z);
41 PL_ALWAYS_INLINE JPH::Float3 ToFloat3(
const plVec3& v)
43 return reinterpret_cast<const JPH::Float3&
>(v);
46 PL_ALWAYS_INLINE JPH::Vec3 ToVec3(
const plSimdVec4f& v)
48 return reinterpret_cast<const JPH::Vec3&
>(v);
51 PL_ALWAYS_INLINE
plQuat ToQuat(
const JPH::Quat& q)
53 return reinterpret_cast<const plQuat&
>(q);
56 PL_ALWAYS_INLINE
plSimdQuat ToSimdQuat(
const JPH::Quat& q)
61 PL_ALWAYS_INLINE JPH::Quat ToQuat(
const plQuat& q)
63 return JPH::Quat(q.x, q.y, q.z, q.w);
66 PL_ALWAYS_INLINE JPH::Quat ToQuat(
const plSimdQuat& q)
68 return reinterpret_cast<const JPH::Quat&
>(q);
71 PL_ALWAYS_INLINE
plTransform ToTransform(
const JPH::Vec3& pos,
const JPH::Quat& rot)
76 PL_ALWAYS_INLINE
plTransform ToTransform(
const JPH::Vec3& pos)
plColor represents an RGBA color in linear color space. Values are stored as float,...
Definition Color.h:44
A 4-component SIMD vector class.
Definition SimdVec4f.h:8