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