template<typename T>
sead::Matrix44 class

Public static variables

static const Matrix44 zero
static const Matrix44 ident

Constructors, destructors, conversion operators

Matrix44()
Matrix44(const Self& n) defaulted
Matrix44(T _00, T _01, T _02, T _03, T _10, T _11, T _12, T _13, T _20, T _21, T _22, T _23, T _30, T _31, T _32, T _33)
Matrix44(const Mtx33& mtx33, const Vec3& t = Vec3::zero, const Vec4& vw = Vec4::ew)
Matrix44(const Mtx34& mtx34, const Vec4& vw = Vec4::ew)

Public functions

auto operator()(s32 i, s32 j) const -> T
auto operator()(s32 i, s32 j) -> T&
auto operator=(const Self& n) -> Self&
void makeIdentity()
void makeZero()
void setInverse(const Self& n)
void setInverseTranspose(const Self& n)
void setMul(const Self& a, const Self& b)
void setMul(const Mtx34& a, const Self& b)
void setMul(const Self& a, const Mtx34& b)
void setTranspose(const Self& n)
void transpose()
void fromQuat(const Quat<T>& q)
void makeR(const Vec3& r)
void makeRIdx(u32 xr, u32 yr, u32 zr)
void makeRzxyIdx(u32 xr, u32 yr, u32 zr)
void toQuat(Quat<T>& q) const
auto getCol(s32 axis) const -> Vec4
auto getRow(s32 row) const -> Vec4
void getCol(Vec4& o, s32 axis) const
void getRow(Vec4& o, s32 row) const
void scaleAllElements(T s)
void scaleBases(T sx, T sy, T sz, T sw)
void setCol(s32 axis, const Vec4& v)
void setRow(s32 row, const Vec4& v)
auto zero(0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f) -> const Matrix44<f32>
auto ident(1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f) -> const Matrix44<f32>
auto zero(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) -> const Matrix44<f64>
auto ident(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1) -> const Matrix44<f64>

Function documentation

template<typename T>
const Matrix44<f32> sead::Matrix44<T>::zero(0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f)

template<typename T>
const Matrix44<f32> sead::Matrix44<T>::ident(1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f, 0. 0f, 0. 0f, 0. 0f, 0. 0f, 1. 0f)

template<typename T>
const Matrix44<f64> sead::Matrix44<T>::zero(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)

template<typename T>
const Matrix44<f64> sead::Matrix44<T>::ident(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)