Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
J3DModelData.h
Go to the documentation of this file.
1#ifndef J3DMODELDATA_H
2#define J3DMODELDATA_H
3
9
10typedef struct _GXColor GXColor;
11class JUTNameTab;
12
17class J3DModelData {
18public:
19 /* 80325D88 */ void clear();
20 /* 80325DA0 */ J3DModelData();
21 /* 80325E14 */ s32 newSharedDisplayList(u32);
22 /* 80325EC8 */ void indexToPtr();
23 /* 80325F94 */ void makeSharedDL();
24 /* 8032600C */ void simpleCalcMaterial(u16, f32 (*)[4]);
25 /* 803260CC */ void syncJ3DSysPointers() const;
26 /* 803260F8 */ void syncJ3DSysFlags() const;
27
28 /* 8032617C */ virtual ~J3DModelData() {}
29
33 u16 getShapeNum() const { return mShapeTable.getShapeNum(); }
35 u16 getJointNum() const { return mJointTree.getJointNum(); }
40 u32 getVtxNum() const { return mVertexData.getVtxNum(); }
41 u32 getNrmNum() const { return mVertexData.getNrmNum(); }
42 u8 getDrawMtxFlag(u16 idx) const { return mJointTree.getDrawMtxFlag(idx); }
43 u16 getDrawMtxIndex(u16 idx) const { return mJointTree.getDrawMtxIndex(idx); }
53 Mtx& getInvJointMtx(s32 idx) const { return mJointTree.getInvJointMtx(idx); }
63 void* getVtxPosArray() const { return mVertexData.getVtxPosArray(); }
64 void* getVtxNrmArray() const { return mVertexData.getVtxNrmArray(); }
66 bool checkFlag(u32 flag) const { return (mFlags & flag) ? true : false; }
67 u32 getFlag() const { return mFlags; }
68 void const* getRawData() const { return mpRawData; }
69 u16 checkBumpFlag() const { return mbHasBumpArray; }
71 bool checkBBoardFlag() const { return mbHasBillboard == 1; }
72 bool isLocked() { return mMaterialTable.isLocked(); }
96
97private:
98 friend class J3DModelLoader;
99
100 /* 0x04 */ void const* mpRawData;
101 /* 0x08 */ u32 mFlags;
102 /* 0x0C */ u16 mbHasBumpArray;
103 /* 0x0E */ u16 mbHasBillboard;
108}; // Size: 0xE4
109
110#endif /* J3DMODELDATA_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition J3DAnimation.h:693
Definition J3DJointTree.h:39
void setHierarchy(J3DModelHierarchy *hierarchy)
Definition J3DJointTree.h:50
u16 * getWEvlpImportantMtxIndex() const
Definition J3DJointTree.h:57
JUTNameTab * getJointName() const
Definition J3DJointTree.h:64
u16 getDrawMtxNum() const
Definition J3DJointTree.h:60
u16 getWEvlpMtxNum() const
Definition J3DJointTree.h:52
u16 getDrawMtxIndex(u16 idx) const
Definition J3DJointTree.h:62
J3DModelHierarchy const * getHierarchy()
Definition J3DJointTree.h:49
J3DDrawMtxData * getDrawMtxData()
Definition J3DJointTree.h:63
u32 getModelDataType() const
Definition J3DJointTree.h:69
u8 getWEvlpMixMtxNum(u16 idx) const
Definition J3DJointTree.h:54
f32 * getWEvlpMixWeight() const
Definition J3DJointTree.h:56
J3DJoint * getJointNodePointer(u16 idx) const
Definition J3DJointTree.h:66
u16 getJointNum() const
Definition J3DJointTree.h:59
void setModelDataType(u32 type)
Definition J3DJointTree.h:70
void makeHierarchy(J3DJoint *, J3DModelHierarchy const **, J3DMaterialTable *, J3DShapeTable *)
Definition J3DJointTree.cpp:16
void setBasicMtxCalc(J3DMtxCalc *calc)
Definition J3DJointTree.h:51
u8 getDrawMtxFlag(u16 idx) const
Definition J3DJointTree.h:61
Mtx & getInvJointMtx(s32 idx) const
Definition J3DJointTree.h:68
u16 * getWEvlpMixMtxIndex() const
Definition J3DJointTree.h:55
Definition J3DModelLoader.h:246
Definition J3DShapeTable.h:12
J3DShape * getShapeNodePointer(u16 idx) const
Definition J3DShapeTable.h:28
u16 getShapeNum() const
Definition J3DShapeTable.h:27
void initShapeNodes(J3DDrawMtxData *, J3DVertexData *)
Definition J3DShapeTable.cpp:17
Definition J3DShape.h:82
Definition J3DTexture.h:12
Definition J3DVertex.h:29
u32 getVtxNum() const
Definition J3DVertex.h:39
u32 getNrmNum() const
Definition J3DVertex.h:38
void * getVtxPosArray() const
Definition J3DVertex.h:33
GXColor * getVtxColorArray(u8 idx) const
Definition J3DVertex.h:35
void * getVtxNrmArray() const
Definition J3DVertex.h:34
Definition JUTNameTab.h:27
static volatile BOOL flag
Definition dspproc.cpp:20
f32 Mtx[3][4]
Definition mtx.h:15
Definition d_a_obj_sekizoa.cpp:45
Definition d_a_hozelda.cpp:36
Definition d_a_hozelda.cpp:45
Definition J3DJointTree.h:23
Definition d_a_hozelda.cpp:239
Definition d_a_hozelda.cpp:34
J3DMaterial * getMaterialNodePointer(u16 idx) const
Definition J3DMaterialAttach.h:34
void removeTexMtxAnimator(J3DAnmTextureSRTKey *)
Definition J3DMaterialAttach.cpp:82
JUTNameTab * getMaterialName() const
Definition J3DMaterialAttach.h:39
int entryTexMtxAnimator(J3DAnmTextureSRTKey *)
Definition J3DMaterialAttach.cpp:214
void removeTevRegAnimator(J3DAnmTevRegKey *)
Definition J3DMaterialAttach.cpp:105
JUTNameTab * getTextureName() const
Definition J3DMaterialAttach.h:37
u16 getMaterialNum() const
Definition J3DMaterialAttach.h:41
J3DTexture * getTexture() const
Definition J3DMaterialAttach.h:36
int entryTexNoAnimator(J3DAnmTexPattern *)
Definition J3DMaterialAttach.cpp:189
bool isLocked() const
Definition J3DMaterialAttach.h:42
int removeMatColorAnimator(J3DAnmColor *)
Definition J3DMaterialAttach.cpp:40
int removeTexNoAnimator(J3DAnmTexPattern *)
Definition J3DMaterialAttach.cpp:59
int entryTevRegAnimator(J3DAnmTevRegKey *)
Definition J3DMaterialAttach.cpp:255
Definition d_a_hozelda.cpp:93
Definition d_a_ep.cpp:51
void indexToPtr()
Definition J3DModelData.cpp:50
virtual ~J3DModelData()
Definition J3DModelData.h:28
J3DMaterialTable mMaterialTable
Definition J3DModelData.h:105
J3DVertexData mVertexData
Definition J3DModelData.h:107
int removeMatColorAnimator(J3DAnmColor *anm)
Definition J3DModelData.h:85
int removeTexNoAnimator(J3DAnmTexPattern *anm)
Definition J3DModelData.h:76
s32 newSharedDisplayList(u32)
Definition J3DModelData.cpp:24
u16 getDrawMtxIndex(u16 idx) const
Definition J3DModelData.h:43
void setHierarchy(J3DModelHierarchy *hierarchy)
Definition J3DModelData.h:50
void * getVtxNrmArray() const
Definition J3DModelData.h:64
u32 getFlag() const
Definition J3DModelData.h:67
u32 getNrmNum() const
Definition J3DModelData.h:41
void const * getRawData() const
Definition J3DModelData.h:68
void syncJ3DSys()
Definition J3DModelData.h:88
u8 getWEvlpMixMtxNum(u16 idx) const
Definition J3DModelData.h:59
JUTNameTab * getTextureName() const
Definition J3DModelData.h:55
GXColor * getVtxColorArray(u8 idx) const
Definition J3DModelData.h:65
void clear()
Definition J3DModelData.cpp:11
void setModelDataType(u32 type)
Definition J3DModelData.h:62
int removeTevRegAnimator(J3DAnmTevRegKey *anm)
Definition J3DModelData.h:82
int removeTexMtxAnimator(J3DAnmTextureSRTKey *anm)
Definition J3DModelData.h:79
u16 mbHasBillboard
Definition J3DModelData.h:103
u16 getWEvlpMtxNum() const
Definition J3DModelData.h:56
u32 mFlags
Definition J3DModelData.h:101
u8 getDrawMtxFlag(u16 idx) const
Definition J3DModelData.h:42
bool checkBBoardFlag() const
Definition J3DModelData.h:71
int entryTevRegAnimator(J3DAnmTevRegKey *anm)
Definition J3DModelData.h:74
J3DTexture * getTexture() const
Definition J3DModelData.h:54
J3DVertexData & getVertexData()
Definition J3DModelData.h:32
J3DJointTree mJointTree
Definition J3DModelData.h:104
u16 * getWEvlpImportantMtxIndex() const
Definition J3DModelData.h:60
J3DModelHierarchy const * getHierarchy()
Definition J3DModelData.h:49
u16 getShapeNum() const
Definition J3DModelData.h:33
u16 getDrawMtxNum() const
Definition J3DModelData.h:36
JUTNameTab * getMaterialName() const
Definition J3DModelData.h:31
u16 * getWEvlpMixMtxIndex() const
Definition J3DModelData.h:57
void entryTexMtxAnimator(J3DAnmTextureSRTKey *anm)
Definition J3DModelData.h:73
J3DShape * getShapeNodePointer(u16 idx) const
Definition J3DModelData.h:46
u16 checkBumpFlag() const
Definition J3DModelData.h:69
u32 getModelDataType() const
Definition J3DModelData.h:61
J3DModelData()
Definition J3DModelData.cpp:19
u16 getMaterialNum() const
Definition J3DModelData.h:34
J3DMaterial * getMaterialNodePointer(u16 idx) const
Definition J3DModelData.h:37
void setBumpFlag(u32 flag)
Definition J3DModelData.h:70
bool isLocked()
Definition J3DModelData.h:72
void makeHierarchy(J3DJoint *joint, J3DModelHierarchy const **hierarchy)
Definition J3DModelData.h:92
void syncJ3DSysFlags() const
Definition J3DModelData.cpp:110
JUTNameTab * getJointName() const
Definition J3DModelData.h:52
J3DJointTree & getJointTree()
Definition J3DModelData.h:48
J3DShapeTable * getShapeTable()
Definition J3DModelData.h:45
void * getVtxPosArray() const
Definition J3DModelData.h:63
void makeSharedDL()
Definition J3DModelData.cpp:76
void simpleCalcMaterial(u16, f32(*)[4])
Definition J3DModelData.cpp:88
void const * mpRawData
Definition J3DModelData.h:100
J3DMaterialTable & getMaterialTable()
Definition J3DModelData.h:30
void setBasicMtxCalc(J3DMtxCalc *calc)
Definition J3DModelData.h:51
void syncJ3DSysPointers() const
Definition J3DModelData.cpp:101
u16 getJointNum() const
Definition J3DModelData.h:35
f32 * getWEvlpMixWeight() const
Definition J3DModelData.h:58
J3DDrawMtxData * getDrawMtxData()
Definition J3DModelData.h:44
u32 getVtxNum() const
Definition J3DModelData.h:40
Mtx & getInvJointMtx(s32 idx) const
Definition J3DModelData.h:53
void entryTexNoAnimator(J3DAnmTexPattern *anm)
Definition J3DModelData.h:75
bool checkFlag(u32 flag) const
Definition J3DModelData.h:66
J3DJoint * getJointNodePointer(u16 idx) const
Definition J3DModelData.h:47
u16 mbHasBumpArray
Definition J3DModelData.h:102
J3DShapeTable mShapeTable
Definition J3DModelData.h:106
Definition J3DJointTree.h:12
Definition d_a_hozelda.cpp:217
Definition d_a_ep.cpp:68
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