MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / xQuatToMat

Function xQuatToMat

src/SB/Core/x/xMath3.cpp:618–646  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

616}
617
618void xQuatToMat(const xQuat* q, xMat3x3* m)
619{
620 F32 tx = (2.0f * q->v.x);
621 F32 ty = (2.0f * q->v.y);
622 F32 tz = (2.0f * q->v.z);
623 F32 tsx = tx * q->s;
624 F32 tsy = ty * q->s;
625 F32 tsz = tz * q->s;
626 F32 txx = tx * q->v.x;
627 F32 txy = ty * q->v.x;
628 F32 txz = tz * q->v.x;
629 F32 tyy = ty * q->v.y;
630 F32 tyz = tz * q->v.y;
631 F32 tzz = tz * q->v.z;
632
633 m->right.x = (1.0f - tyy) - tzz;
634 m->right.y = txy - tsz;
635 m->right.z = txz + tsy;
636
637 m->up.x = txy + tsz;
638 m->up.y = (1.0f - tzz) - txx;
639 m->up.z = tyz - tsx;
640
641 m->at.x = txz - tsy;
642 m->at.y = tyz + tsx;
643 m->at.z = (1.0f - txx) - tyy;
644
645 m->flags = 0;
646}
647
648void xQuatToAxisAngle(const xQuat* q, xVec3* a, F32* t)
649{

Callers 14

_xCameraUpdateFunction · 0.70
xCameraLookFunction · 0.70
updateMethod · 0.70
xCutscene_SetCameraFunction · 0.70
xcsCalcAnimMatricesFunction · 0.70
xEntMPMoveFunction · 0.70
PatrickGrabCBFunction · 0.50
update_trailFunction · 0.50
apply_turnMethod · 0.50
zCameraConversUpdateFunction · 0.50
zCameraFlyUpdateFunction · 0.50
bakeMorphAnimFunction · 0.50

Calls

no outgoing calls

Tested by

no test coverage detected