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
5
6class J3DModelData;
7
13public:
15
16 void initialize();
24 void calcDrawMtx(u32, Vec const&, f32 const (&)[3][4]);
25 void calcNrmMtx();
26 void calcBBoardMtx();
27
28 MtxP getAnmMtx(int idx) { return mpAnmMtx[idx]; }
29 void setAnmMtx(int i, Mtx m) { MTXCopy(m, (MtxP)mpAnmMtx[i]); }
30 MtxP getWeightAnmMtx(int idx) { return mpWeightEvlpMtx[idx]; }
31 MtxP getUserAnmMtx(int idx) { return mpUserAnmMtx[idx]; }
32
33 void setScaleFlag(int idx, u8 flag) { mpScaleFlagArr[idx] = flag; }
35 u8* getScaleFlagArray() const { return mpScaleFlagArr; }
36 u8 getScaleFlag(int idx) const { return mpScaleFlagArr[idx]; }
37 u8 getEnvScaleFlag(int idx) const { return mpEvlpScaleFlagArr[idx]; }
40 Mtx* getDrawMtx(int idx) { return &mpDrawMtxArr[1][mCurrentViewNo][idx]; }
43 Mtx33* getNrmMtx(int idx) { return &mpNrmMtxArr[1][mCurrentViewNo][idx]; }
44 Mtx33*** getBumpMtxPtrPtr() const { return mpBumpMtxArr[1]; }
45 Mtx33* getBumpMtxPtr(int idx) { return mpBumpMtxArr[1][idx][mCurrentViewNo]; }
47
48 void setNrmMtx(int idx, Mtx mtx) {
50 }
51
57
63
68
70 /* 0x04 */ u8* mpScaleFlagArr;
72 /* 0x0C */ Mtx* mpAnmMtx;
73 /* 0x10 */ Mtx* mpWeightEvlpMtx;
74 /* 0x14 */ Mtx** mpDrawMtxArr[2];
75 /* 0x1C */ Mtx33** mpNrmMtxArr[2];
76 /* 0x24 */ Mtx33*** mpBumpMtxArr[2];
77 /* 0x2C */ u32 mMtxNum;
78 /* 0x30 */ u32 mCurrentViewNo;
79 /* 0x34 */ Mtx* mpUserAnmMtx;
80
81public:
82 virtual ~J3DMtxBuffer() {}
83};
84
85void J3DCalcViewBaseMtx(f32 (*param_0)[4], Vec const& param_1, f32 const (&param_2)[3][4],
86 f32 (*param_3)[4]);
87
88#endif /* J3DMTXBUFFER_H */
static BOOL flag
Definition DEMOAVX.c:20
void J3DCalcViewBaseMtx(f32(*param_0)[4], Vec const &param_1, f32 const (&param_2)[3][4], f32(*param_3)[4])
J3DError
Definition J3DSys.h:9
void J3DPSMtx33CopyFrom34(__REGISTER MtxP src, __REGISTER Mtx3P dst)
Definition J3DTransform.h:90
static Mtx mtx[10]
Definition c_lib.cpp:486
Definition J3DJointTree.h:39
Definition J3DModelData.h:17
Definition J3DMtxBuffer.h:12
Mtx33 ** mpNrmMtxArr[2]
Definition J3DMtxBuffer.h:75
s32 createBumpMtxArray(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:172
u32 mCurrentViewNo
Definition J3DMtxBuffer.h:78
u32 mMtxNum
Definition J3DMtxBuffer.h:77
Mtx33 *** getBumpMtxPtrPtr() const
Definition J3DMtxBuffer.h:44
void calcWeightEnvelopeMtx()
Definition J3DMtxBuffer.cpp:239
static Mtx33 sNoUseNrmMtx
Definition J3DMtxBuffer.h:65
J3DError createAnmMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:93
Mtx * getDrawMtx(int idx)
Definition J3DMtxBuffer.h:40
void setNrmMtx(int idx, Mtx mtx)
Definition J3DMtxBuffer.h:48
static Mtx * sNoUseDrawMtxPtr
Definition J3DMtxBuffer.h:66
void initialize()
Definition J3DMtxBuffer.cpp:25
Mtx ** getDrawMtxPtrPtr()
Definition J3DMtxBuffer.h:38
J3DJointTree * mJointTree
Definition J3DMtxBuffer.h:69
s32 create(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:47
Mtx ** mpDrawMtxArr[2]
Definition J3DMtxBuffer.h:74
s32 createWeightEnvelopeMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:110
u8 * mpEvlpScaleFlagArr
Definition J3DMtxBuffer.h:71
void swapDrawMtx()
Definition J3DMtxBuffer.h:52
Mtx33 * getNrmMtxPtr()
Definition J3DMtxBuffer.h:42
u8 * getScaleFlagArray() const
Definition J3DMtxBuffer.h:35
MtxP getWeightAnmMtx(int idx)
Definition J3DMtxBuffer.h:30
void calcNrmMtx()
Definition J3DMtxBuffer.cpp:452
Mtx33 *** mpBumpMtxArr[2]
Definition J3DMtxBuffer.h:76
Mtx * mpAnmMtx
Definition J3DMtxBuffer.h:72
void setScaleFlag(int idx, u8 flag)
Definition J3DMtxBuffer.h:33
u8 getEnvScaleFlag(int idx) const
Definition J3DMtxBuffer.h:37
static Mtx sNoUseDrawMtx
Definition J3DMtxBuffer.h:64
void calcBBoardMtx()
Definition J3DMtxBuffer.cpp:471
MtxP getAnmMtx(int idx)
Definition J3DMtxBuffer.h:28
Mtx * getDrawMtxPtr()
Definition J3DMtxBuffer.h:39
Mtx33 ** getNrmMtxPtrPtr()
Definition J3DMtxBuffer.h:41
s32 setNoUseDrawMtx()
Definition J3DMtxBuffer.cpp:124
u8 getScaleFlag(int idx) const
Definition J3DMtxBuffer.h:36
Mtx33 * getNrmMtx(int idx)
Definition J3DMtxBuffer.h:43
u32 * getCurrentViewNoPtr()
Definition J3DMtxBuffer.h:34
void setAnmMtx(int i, Mtx m)
Definition J3DMtxBuffer.h:29
void swapNrmMtx()
Definition J3DMtxBuffer.h:58
virtual ~J3DMtxBuffer()
Definition J3DMtxBuffer.h:82
Mtx33 * getBumpMtxPtr(int idx)
Definition J3DMtxBuffer.h:45
J3DJointTree * getJointTree() const
Definition J3DMtxBuffer.h:46
J3DMtxBuffer()
Definition J3DMtxBuffer.h:14
static Mtx33 * sNoUseNrmMtxPtr
Definition J3DMtxBuffer.h:67
Mtx * mpUserAnmMtx
Definition J3DMtxBuffer.h:79
MtxP getUserAnmMtx(int idx)
Definition J3DMtxBuffer.h:31
u8 * mpScaleFlagArr
Definition J3DMtxBuffer.h:70
Mtx * mpWeightEvlpMtx
Definition J3DMtxBuffer.h:73
void calcDrawMtx(u32, Vec const &, f32 const (&)[3][4])
Definition J3DMtxBuffer.cpp:403
s32 createDoubleDrawMtx(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:131
f32 Mtx33[3][3]
Definition mtx.h:35
f32 Mtx[3][4]
Definition mtx.h:25
f32(* MtxP)[4]
Definition mtx.h:38
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
int m
Definition e_atan2.c:62
int i
Definition e_pow.c:165
Definition mtx.h:13