22 :
x( 0.0f ),
y( 0.0f ),
z( 0.0f ),
w( 1.0f )
26 :
x( a_pQuaternion.
x ),
y( a_pQuaternion.
y ),
z( a_pQuaternion.
z ),
w( a_pQuaternion.
w ) {}
29 :
x( a_fX ),
y( a_fY ),
z( a_fZ ),
w( a_fW ) {}
3D vector implementation for the Toshi engine
#define TOSHI_NAMESPACE_START
#define TOSHI_NAMESPACE_END
TFORCEINLINE TFLOAT Sqrt(TFLOAT a_fX)
void GetEulerXYZ(TVector3 &outVec) const
void Set(TFLOAT a_fX, TFLOAT a_fY, TFLOAT a_fZ, TFLOAT a_fW)
TFLOAT MagnitudeSq() const
void operator=(const TQuaternion &other)
static constexpr TFLOAT DELTA
static const TQuaternion IDENTITY
void SetVectorDirection(const TVector3 &a_rVec3, const TVector3 &a_rVec3_2)
void SetRotation(const TVector3 &a_rVec3, TFLOAT a_fVal)
TQuaternion(const TQuaternion &a_pQuaternion)
static void RotateVector(TVector3 ¶m_1, const TQuaternion ¶m_2, const TVector3 param_3)
void RotateAroundAxis(const TVector3 ¶m_1, TFLOAT param_2)
static void Nlerp(TQuaternion &a_rOut, const TQuaternion &a_rStart, const TQuaternion &a_rEnd, float a_fProgress)
void SetFromEulerYX(const TFLOAT *fVal)
static void Slerp(TQuaternion &a_rOut, const TQuaternion &a_rStart, const TQuaternion &a_rEnd, float a_fProgress)
void SetFromEulerRollPitchYaw(TFLOAT a_fRoll, TFLOAT a_fPitch, TFLOAT a_fYaw)
TQuaternion & operator*=(const TQuaternion &a_rQuat)
TQuaternion(TFLOAT a_fX, TFLOAT a_fY, TFLOAT a_fZ, TFLOAT a_fW)
const TVector4 & AsVector4() const
constexpr void Negate3(const TVector4 &vec)