More CCubeMaterial

Former-commit-id: 78022784ef
This commit is contained in:
2022-09-05 00:00:04 -04:00
parent 928d673a86
commit 5726400667
15 changed files with 318 additions and 27 deletions

View File

@@ -5,6 +5,8 @@
#include "Kyoto/Math/CVector3f.hpp"
typedef const f32 (*ConstMtxPtr)[4];
class CInputStream;
class CMatrix3f;
@@ -13,6 +15,8 @@ public:
CTransform4f() {
// TODO
}
CTransform4f(const CVector3f& m0, const CVector3f& m1, const CVector3f& m2, const CVector3f& pos)
: m0(m0), posX(pos.GetX()), m1(m1), posY(pos.GetY()), m2(m2), posZ(pos.GetZ()) {}
CTransform4f(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32);
CTransform4f(const CInputStream& in);
CTransform4f(const CMatrix3f& rotation, const CVector3f& translation);
@@ -23,36 +27,37 @@ public:
CVector3f GetRight() const { return CVector3f(m0.GetX(), m1.GetX(), m2.GetX()); }
CVector3f GetForward() const { return CVector3f(m0.GetY(), m1.GetY(), m2.GetY()); }
CVector3f GetUp() const { return CVector3f(m0.GetZ(), m1.GetZ(), m2.GetZ()); }
ConstMtxPtr GetCStyleMatrix() const { return reinterpret_cast<ConstMtxPtr>(this); }
CMatrix3f BuildMatrix3f() const;
// Get00__12CTransform4fCFv
// Get01__12CTransform4fCFv
// Get02__12CTransform4fCFv
// Get03__12CTransform4fCFv
// Get10__12CTransform4fCFv
// Get11__12CTransform4fCFv
// Get12__12CTransform4fCFv
// Get13__12CTransform4fCFv
// Get20__12CTransform4fCFv
// Get21__12CTransform4fCFv
// Get22__12CTransform4fCFv
// Get23__12CTransform4fCFv
f32 Get00() const { return m0.GetX(); }
f32 Get01() const { return m0.GetY(); }
f32 Get02() const { return m0.GetZ(); }
f32 Get03() const { return posX; }
f32 Get10() const { return m1.GetX(); }
f32 Get11() const { return m1.GetY(); }
f32 Get12() const { return m1.GetZ(); }
f32 Get13() const { return posY; }
f32 Get20() const { return m2.GetX(); }
f32 Get21() const { return m2.GetY(); }
f32 Get22() const { return m2.GetZ(); }
f32 Get23() const { return posZ; }
// GetColumn__12CTransform4fCF5EDimX
// GetColumn__12CTransform4fCF5EDimY
// GetColumn__12CTransform4fCF5EDimZ
// GetColumn__12CTransform4fCFi
// GetCStyleMatrix__12CTransform4fCFv
// GetInverse__12CTransform4fCFv
// GetQuickInverse__12CTransform4fCFv
CTransform4f GetQuickInverse() const;
// GetRotation__12CTransform4fCFv
// GetRow__12CTransform4fCF5EDimX
// GetRow__12CTransform4fCF5EDimY
// GetRow__12CTransform4fCF5EDimZ
inline const CVector3f& GetRow(EDimX dim) const { return m0; }
inline const CVector3f& GetRow(EDimY dim) const { return m1; }
inline const CVector3f& GetRow(EDimZ dim) const { return m2; }
// GetRow__12CTransform4fCFi
// GetUp__12CTransform4fCFv
// LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
// MakeRotationsBasedOnY__12CTransform4fFRC13CUnitVector3f
// MultiplyIgnoreTranslation__12CTransform4fCFRC12CTransform4f
CTransform4f MultiplyIgnoreTranslation(const CTransform4f& other) const;
// Orthonormalize__12CTransform4fFv
// Rotate__12CTransform4fCFRC9CVector3f
// RotateLocalX__12CTransform4fFRC9CRelAngle
@@ -85,8 +90,8 @@ public:
void AddTranslationZ(f32 z) { posZ += z; }
CTransform4f& operator*=(const CTransform4f& other);
CTransform4f& operator*(const CTransform4f& vec);
CTransform4f& operator*(const CVector3f& vec);
CTransform4f operator*(const CTransform4f& vec) const;
CTransform4f operator*(const CVector3f& vec) const;
static CTransform4f FromColumns(const CVector3f&, const CVector3f&, const CVector3f&, const CVector3f&);
static const CTransform4f& Identity() { return sIdentity; }