prime/include/Kyoto/Math/CMatrix4f.hpp

42 lines
792 B
C++
Raw Normal View History

#ifndef _CMATRIX4F
#define _CMATRIX4F
#include "types.h"
2023-01-10 23:03:38 +00:00
#include "Kyoto/Math/CVector3f.hpp"
class CMatrix4f {
2022-12-01 05:58:57 +00:00
public:
CMatrix4f(float, float, float, float, float, float, float, float, float, float, float, float,
float, float, float, float);
2023-01-10 23:03:38 +00:00
CVector3f operator*(const CVector3f& vec) const;
2022-12-06 23:32:47 +00:00
CVector3f MultiplyOneOverW(const CVector3f& vec) const;
2023-01-10 23:03:38 +00:00
float MultiplyGetW(const CVector3f& vec) const;
2022-12-06 23:32:47 +00:00
2023-01-10 23:03:38 +00:00
static const CMatrix4f& Identity() { return sIdentity; }
private:
2023-01-10 23:03:38 +00:00
static const CMatrix4f sIdentity;
float m00;
float m01;
float m02;
float m03;
float m10;
float m11;
float m12;
float m13;
float m20;
float m21;
float m22;
float m23;
float m30;
float m31;
float m32;
float m33;
};
CHECK_SIZEOF(CMatrix4f, 0x40);
#endif // _CMATRIX4F