Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
J3DMtxBuffer.h
Go to the documentation of this file.
1#ifndef J3DMTXBUFFER_H
2#define J3DMTXBUFFER_H
3
6
7class J3DModelData;
8
14public:
16
17 void initialize();
25 void calcDrawMtx(u32, Vec const&, f32 const (&)[3][4]);
26 void calcNrmMtx();
27 void calcBBoardMtx();
28
29 MtxP getAnmMtx(int idx) { return mpAnmMtx[idx]; }
30 void setAnmMtx(int i, Mtx m) { MTXCopy(m, (MtxP)mpAnmMtx[i]); }
31 MtxP getWeightAnmMtx(int idx) { return mpWeightEvlpMtx[idx]; }
32 MtxP getUserAnmMtx(int idx) { return mpUserAnmMtx[idx]; }
33
34 void setScaleFlag(int idx, u8 flag) { mpScaleFlagArr[idx] = flag; }
36 u8* getScaleFlagArray() const { return mpScaleFlagArr; }
37 u8 getScaleFlag(int idx) const { return mpScaleFlagArr[idx]; }
38 u8 getEnvScaleFlag(int idx) const { return mpEvlpScaleFlagArr[idx]; }
41 Mtx* getDrawMtx(int idx) { return &mpDrawMtxArr[1][mCurrentViewNo][idx]; }
44 Mtx33* getNrmMtx(int idx) { return &mpNrmMtxArr[1][mCurrentViewNo][idx]; }
45 Mtx33*** getBumpMtxPtrPtr() const { return mpBumpMtxArr[1]; }
46 Mtx33* getBumpMtxPtr(int idx) { return mpBumpMtxArr[1][idx][mCurrentViewNo]; }
48
49 void setNrmMtx(int idx, Mtx mtx) {
51 }
52
58
64
69
71 /* 0x04 */ u8* mpScaleFlagArr;
73 /* 0x0C */ Mtx* mpAnmMtx;
74 /* 0x10 */ Mtx* mpWeightEvlpMtx;
75 /* 0x14 */ Mtx** mpDrawMtxArr[2];
76 /* 0x1C */ Mtx33** mpNrmMtxArr[2];
77 /* 0x24 */ Mtx33*** mpBumpMtxArr[2];
78 /* 0x2C */ u32 mMtxNum;
79 /* 0x30 */ u32 mCurrentViewNo;
80 /* 0x34 */ Mtx* mpUserAnmMtx;
81
82public:
83 virtual ~J3DMtxBuffer() {}
84};
85
86void J3DCalcViewBaseMtx(f32 (*param_0)[4], Vec const& param_1, f32 const (&param_2)[3][4],
87 f32 (*param_3)[4]);
88
89#endif /* J3DMTXBUFFER_H */
static BOOL flag
Definition DEMOAVX.c:20
J3DError
Definition J3DEnum.h:4
void J3DCalcViewBaseMtx(f32(*param_0)[4], Vec const &param_1, f32 const (&param_2)[3][4], f32(*param_3)[4])
void J3DPSMtx33CopyFrom34(__REGISTER MtxP src, __REGISTER Mtx3P dst)
Definition J3DTransform.h:90
static Mtx mtx[10]
Definition c_lib.cpp:486
Definition J3DJointTree.h:43
Definition J3DModelData.h:15
Definition J3DMtxBuffer.h:13
Mtx33 ** mpNrmMtxArr[2]
Definition J3DMtxBuffer.h:76
s32 createBumpMtxArray(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:173
u32 mCurrentViewNo
Definition J3DMtxBuffer.h:79
u32 mMtxNum
Definition J3DMtxBuffer.h:78
Mtx33 *** getBumpMtxPtrPtr() const
Definition J3DMtxBuffer.h:45
void calcWeightEnvelopeMtx()
Definition J3DMtxBuffer.cpp:240
static Mtx33 sNoUseNrmMtx
Definition J3DMtxBuffer.h:66
J3DError createAnmMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:94
Mtx * getDrawMtx(int idx)
Definition J3DMtxBuffer.h:41
void setNrmMtx(int idx, Mtx mtx)
Definition J3DMtxBuffer.h:49
static Mtx * sNoUseDrawMtxPtr
Definition J3DMtxBuffer.h:67
void initialize()
Definition J3DMtxBuffer.cpp:26
Mtx ** getDrawMtxPtrPtr()
Definition J3DMtxBuffer.h:39
J3DJointTree * mJointTree
Definition J3DMtxBuffer.h:70
s32 create(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:48
Mtx ** mpDrawMtxArr[2]
Definition J3DMtxBuffer.h:75
s32 createWeightEnvelopeMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:111
u8 * mpEvlpScaleFlagArr
Definition J3DMtxBuffer.h:72
void swapDrawMtx()
Definition J3DMtxBuffer.h:53
Mtx33 * getNrmMtxPtr()
Definition J3DMtxBuffer.h:43
u8 * getScaleFlagArray() const
Definition J3DMtxBuffer.h:36
MtxP getWeightAnmMtx(int idx)
Definition J3DMtxBuffer.h:31
void calcNrmMtx()
Definition J3DMtxBuffer.cpp:456
Mtx33 *** mpBumpMtxArr[2]
Definition J3DMtxBuffer.h:77
Mtx * mpAnmMtx
Definition J3DMtxBuffer.h:73
void setScaleFlag(int idx, u8 flag)
Definition J3DMtxBuffer.h:34
u8 getEnvScaleFlag(int idx) const
Definition J3DMtxBuffer.h:38
static Mtx sNoUseDrawMtx
Definition J3DMtxBuffer.h:65
void calcBBoardMtx()
Definition J3DMtxBuffer.cpp:475
MtxP getAnmMtx(int idx)
Definition J3DMtxBuffer.h:29
Mtx * getDrawMtxPtr()
Definition J3DMtxBuffer.h:40
Mtx33 ** getNrmMtxPtrPtr()
Definition J3DMtxBuffer.h:42
s32 setNoUseDrawMtx()
Definition J3DMtxBuffer.cpp:125
u8 getScaleFlag(int idx) const
Definition J3DMtxBuffer.h:37
Mtx33 * getNrmMtx(int idx)
Definition J3DMtxBuffer.h:44
u32 * getCurrentViewNoPtr()
Definition J3DMtxBuffer.h:35
void setAnmMtx(int i, Mtx m)
Definition J3DMtxBuffer.h:30
void swapNrmMtx()
Definition J3DMtxBuffer.h:59
virtual ~J3DMtxBuffer()
Definition J3DMtxBuffer.h:83
Mtx33 * getBumpMtxPtr(int idx)
Definition J3DMtxBuffer.h:46
J3DJointTree * getJointTree() const
Definition J3DMtxBuffer.h:47
J3DMtxBuffer()
Definition J3DMtxBuffer.h:15
static Mtx33 * sNoUseNrmMtxPtr
Definition J3DMtxBuffer.h:68
Mtx * mpUserAnmMtx
Definition J3DMtxBuffer.h:80
MtxP getUserAnmMtx(int idx)
Definition J3DMtxBuffer.h:32
u8 * mpScaleFlagArr
Definition J3DMtxBuffer.h:71
Mtx * mpWeightEvlpMtx
Definition J3DMtxBuffer.h:74
void calcDrawMtx(u32, Vec const &, f32 const (&)[3][4])
Definition J3DMtxBuffer.cpp:404
s32 createDoubleDrawMtx(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:132
f32 Mtx33[3][3]
Definition mtx.h:35
f32 Mtx[3][4]
Definition mtx.h:25
f32(* MtxP)[4]
Definition mtx.h:38
int m
Definition e_atan2.c:62
int i
Definition e_log.c:92
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition mtx.h:13