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 /* 80326214 */ void initialize();
17 /* 80326258 */ s32 create(J3DModelData*, u32);
18 /* 80326364 */ s32 createAnmMtx(J3DModelData*);
20 /* 8032648C */ s32 setNoUseDrawMtx();
21 /* 803264B8 */ s32 createDoubleDrawMtx(J3DModelData*, u32);
22 /* 80326664 */ s32 createBumpMtxArray(J3DModelData*, u32);
23 /* 803268D4 */ void calcWeightEnvelopeMtx();
24 /* 80326ACC */ void calcDrawMtx(u32, Vec const&, f32 const (&)[3][4]);
25 /* 80326D3C */ void calcNrmMtx();
26 /* 80326EF0 */ void calcBBoardMtx();
27
28 MtxP getAnmMtx(int idx) const { return mpAnmMtx[idx]; }
29 void setAnmMtx(int i, Mtx m) { MTXCopy(m, (MtxP)mpAnmMtx[i]); }
30 MtxP getWeightAnmMtx(int idx) const { return mpWeightEvlpMtx[idx]; }
31 MtxP getUserAnmMtx(int idx) const { 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]; }
38 Mtx** getDrawMtxPtrPtr() const { return mpDrawMtxArr[1]; }
40 Mtx* getDrawMtx(int idx) const { return &mpDrawMtxArr[1][mCurrentViewNo][idx]; }
41 Mtx33** getNrmMtxPtrPtr() const { return mpNrmMtxArr[1]; }
43 Mtx33* getNrmMtx(u16 idx) const { return &mpNrmMtxArr[1][mCurrentViewNo][idx]; }
44 Mtx33*** getBumpMtxPtrPtr() const { return mpBumpMtxArr[1]; }
45 Mtx33* getBumpMtxPtr(int idx) const { return mpBumpMtxArr[1][idx][mCurrentViewNo]; }
47
48 void setNrmMtx(int idx, Mtx* mtx) {
50 }
51
57
63
68
69private:
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 mFlags;
79 /* 0x30 */ u32 mCurrentViewNo;
80 /* 0x34 */ Mtx* mpUserAnmMtx;
81
82public:
83 /* 803283B4 */ 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 */
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:93
static Mtx mtx[10]
Definition c_lib.cpp:347
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition J3DJointTree.h:39
Definition J3DMtxBuffer.h:12
Mtx33 ** mpNrmMtxArr[2]
Definition J3DMtxBuffer.h:76
MtxP getUserAnmMtx(int idx) const
Definition J3DMtxBuffer.h:31
s32 createBumpMtxArray(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:181
u32 mCurrentViewNo
Definition J3DMtxBuffer.h:79
Mtx33 *** getBumpMtxPtrPtr() const
Definition J3DMtxBuffer.h:44
void calcWeightEnvelopeMtx()
Definition J3DMtxBuffer.cpp:250
static Mtx33 sNoUseNrmMtx
Definition J3DMtxBuffer.h:65
Mtx33 * getNrmMtxPtr() const
Definition J3DMtxBuffer.h:42
Mtx33 ** getNrmMtxPtrPtr() const
Definition J3DMtxBuffer.h:41
Mtx * getDrawMtx(int idx) const
Definition J3DMtxBuffer.h:40
static Mtx * sNoUseDrawMtxPtr
Definition J3DMtxBuffer.h:66
void initialize()
Definition J3DMtxBuffer.cpp:11
J3DJointTree * mJointTree
Definition J3DMtxBuffer.h:70
s32 create(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:38
Mtx ** mpDrawMtxArr[2]
Definition J3DMtxBuffer.h:75
s32 createWeightEnvelopeMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:98
u8 * mpEvlpScaleFlagArr
Definition J3DMtxBuffer.h:72
Mtx33 * getNrmMtx(u16 idx) const
Definition J3DMtxBuffer.h:43
void swapDrawMtx()
Definition J3DMtxBuffer.h:52
u8 * getScaleFlagArray() const
Definition J3DMtxBuffer.h:35
void calcNrmMtx()
Definition J3DMtxBuffer.cpp:320
Mtx33 *** mpBumpMtxArr[2]
Definition J3DMtxBuffer.h:77
Mtx * getDrawMtxPtr() const
Definition J3DMtxBuffer.h:39
Mtx * mpAnmMtx
Definition J3DMtxBuffer.h:73
void setScaleFlag(int idx, u8 flag)
Definition J3DMtxBuffer.h:33
Mtx ** getDrawMtxPtrPtr() const
Definition J3DMtxBuffer.h:38
u8 getEnvScaleFlag(int idx) const
Definition J3DMtxBuffer.h:37
static Mtx sNoUseDrawMtx
Definition J3DMtxBuffer.h:64
void calcBBoardMtx()
Definition J3DMtxBuffer.cpp:340
s32 createAnmMtx(J3DModelData *)
Definition J3DMtxBuffer.cpp:83
s32 setNoUseDrawMtx()
Definition J3DMtxBuffer.cpp:126
u8 getScaleFlag(int idx) const
Definition J3DMtxBuffer.h:36
MtxP getAnmMtx(int idx) const
Definition J3DMtxBuffer.h:28
void setNrmMtx(int idx, Mtx *mtx)
Definition J3DMtxBuffer.h:48
u32 * getCurrentViewNoPtr()
Definition J3DMtxBuffer.h:34
void setAnmMtx(int i, Mtx m)
Definition J3DMtxBuffer.h:29
void swapNrmMtx()
Definition J3DMtxBuffer.h:58
u32 mFlags
Definition J3DMtxBuffer.h:78
virtual ~J3DMtxBuffer()
Definition J3DMtxBuffer.h:83
J3DJointTree * getJointTree() const
Definition J3DMtxBuffer.h:46
Mtx33 * getBumpMtxPtr(int idx) const
Definition J3DMtxBuffer.h:45
J3DMtxBuffer()
Definition J3DMtxBuffer.h:14
static Mtx33 * sNoUseNrmMtxPtr
Definition J3DMtxBuffer.h:67
MtxP getWeightAnmMtx(int idx) const
Definition J3DMtxBuffer.h:30
Mtx * mpUserAnmMtx
Definition J3DMtxBuffer.h:80
u8 * mpScaleFlagArr
Definition J3DMtxBuffer.h:71
Mtx * mpWeightEvlpMtx
Definition J3DMtxBuffer.h:74
void calcDrawMtx(u32, Vec const &, f32 const (&)[3][4])
Definition J3DMtxBuffer.cpp:273
s32 createDoubleDrawMtx(J3DModelData *, u32)
Definition J3DMtxBuffer.cpp:138
static char * tmp[5]
Definition d_a_npc_ashB.cpp:231
static volatile BOOL flag
Definition dspproc.cpp:20
int m
Definition e_atan2.c:62
int i
Definition e_pow.c:165
f32 Mtx33[3][3]
Definition mtx.h:16
f32(* MtxP)[4]
Definition mtx.h:18
f32 Mtx[3][4]
Definition mtx.h:15
Definition d_a_ep.cpp:51
Definition d_a_hozelda.cpp:18
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
unsigned short u16
Definition types.h:9
signed long s32
Definition types.h:6
unsigned char u8
Definition types.h:8