Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
J3DMaterialFactory_v21.h
Go to the documentation of this file.
1#ifndef J3DMATERIALFACTORY_V21_H
2#define J3DMATERIALFACTORY_V21_H
3
6#include <dolphin/gx.h>
7
8class J3DMaterial;
9struct J3DTexCoord2Info;
11
17 /* 0x000 */ u8 mMaterialMode;
18 /* 0x001 */ u8 mCullModeIdx;
19 /* 0x002 */ u8 mColorChanNumIdx;
20 /* 0x003 */ u8 mTexGenNumIdx;
21 /* 0x004 */ u8 mTevStageNumIdx;
22 /* 0x005 */ u8 mZCompLocIdx;
23 /* 0x006 */ u8 mZModeIdx;
24 /* 0x007 */ u8 mDitherIdx;
25 /* 0x008 */ u16 mMatColorIdx[2];
26 /* 0x00C */ u16 mColorChanIdx[4];
27 /* 0x014 */ u16 mTexCoordIdx[8];
28 /* 0x024 */ u8 field_0x038[0x10];
29 /* 0x034 */ u16 mTexMtxIdx[8];
30 /* 0x044 */ u8 field_0x058[0x2c];
31 /* 0x070 */ u16 mTexNoIdx[8];
32 /* 0x080 */ u16 mTevKColorIdx[4];
33 /* 0x088 */ u8 mTevKColorSel[0x10];
34 /* 0x098 */ u8 mTevKAlphaSel[0x10];
35 /* 0x0A8 */ u16 mTevOrderIdx[0x10];
36 /* 0x0C8 */ u16 mTevColorIdx[4];
37 /* 0x0D0 */ u16 mTevStageIdx[0x10];
38 /* 0x0F0 */ u16 mTevSwapModeIdx[0x10];
39 /* 0x110 */ u16 mTevSwapModeTableIdx[4];
40 /* 0x118 */ u8 field_0x12c[0x18];
41 /* 0x130 */ u16 mFogIdx;
42 /* 0x132 */ u16 mAlphaCompIdx;
43 /* 0x134 */ u16 mBlendIdx;
44 /* 0x136 */ u16 mNBTScaleIdx;
45}; // size 0x138
46
52public:
55 u32 countTexGens(int) const;
56 u32 countStages(int) const;
57 J3DMaterial* create(J3DMaterial*, int, u32) const;
58 J3DGXColor newMatColor(int, int) const;
59 const u8 newColorChanNum(int) const;
60 J3DColorChan newColorChan(int, int) const;
61 u32 newTexGenNum(int) const;
62 J3DTexCoord newTexCoord(int, int) const;
63 J3DTexMtx* newTexMtx(int, int) const;
64 u8 newCullMode(int) const;
65 u16 newTexNo(int, int) const;
66 J3DTevOrder newTevOrder(int, int) const;
67 J3DGXColorS10 newTevColor(int, int) const;
68 J3DGXColor newTevKColor(int, int) const;
69 const u8 newTevStageNum(int) const;
70 J3DTevStage newTevStage(int, int) const;
72 J3DFog newFog(int) const;
73 J3DAlphaComp newAlphaComp(int) const;
74 J3DBlend newBlend(int) const;
75 const J3DZMode newZMode(int) const;
76 const u8 newZCompLoc(int) const;
77 const u8 newDither(int) const;
78 J3DNBTScale newNBTScale(int) const;
79
80 u16 getMaterialID(u16 idx) { return mpMaterialID[idx]; }
82
83 /* 0x00 */ u16 mMaterialNum;
85 /* 0x08 */ u16* mpMaterialID;
86 /* 0x0C */ GXColor* mpMatColor;
87 /* 0x10 */ u8* mpColorChanNum;
89 /* 0x18 */ u8* mpTexGenNum;
91 /* 0x20 */ J3DTexCoord2Info* mpTexCoord2Info;
94 /* 0x2C */ u16* mpTexNo;
98 /* 0x3C */ GXColor* mpTevKColor;
99 /* 0x40 */ u8* mpTevStageNum;
107 /* 0x60 */ u8* mpZCompLoc;
108 /* 0x64 */ u8* mpDither;
110 /* 0x6C */ u16 field_0x6c;
111 /* 0x6E */ u8 field_0x6e;
112 /* 0x6F */ u8 field_0x6f;
113};
114
115#endif /* J3DMATERIALFACTORY_V21_H */
Definition J3DShape.h:15
Definition J3DMaterialFactory_v21.h:51
u16 * mpTexNo
Definition J3DMaterialFactory_v21.h:94
u8 getMaterialMode(int idx) const
Definition J3DMaterialFactory_v21.h:81
u8 field_0x6f
Definition J3DMaterialFactory_v21.h:112
J3DTevSwapModeTable newTevSwapModeTable(int, int) const
Definition J3DMaterialFactory_v21.cpp:291
u32 countStages(int) const
Definition J3DMaterialFactory_v21.cpp:57
J3DNBTScale newNBTScale(int) const
Definition J3DMaterialFactory_v21.cpp:353
u16 mMaterialNum
Definition J3DMaterialFactory_v21.h:83
const u8 newColorChanNum(int) const
Definition J3DMaterialFactory_v21.cpp:178
J3DGXColor newTevKColor(int, int) const
Definition J3DMaterialFactory_v21.cpp:264
u8 * mpZCompLoc
Definition J3DMaterialFactory_v21.h:107
J3DTexCoord newTexCoord(int, int) const
Definition J3DMaterialFactory_v21.cpp:207
J3DTevStageInfo * mpTevStageInfo
Definition J3DMaterialFactory_v21.h:100
u16 newTexNo(int, int) const
Definition J3DMaterialFactory_v21.cpp:235
u32 newTexGenNum(int) const
Definition J3DMaterialFactory_v21.cpp:197
J3DGXColor newMatColor(int, int) const
Definition J3DMaterialFactory_v21.cpp:169
u16 getMaterialID(u16 idx)
Definition J3DMaterialFactory_v21.h:80
const u8 newTevStageNum(int) const
Definition J3DMaterialFactory_v21.cpp:273
u8 * mpDither
Definition J3DMaterialFactory_v21.h:108
u8 * mpTevStageNum
Definition J3DMaterialFactory_v21.h:99
J3DTexCoord2Info * mpTexCoord2Info
Definition J3DMaterialFactory_v21.h:91
u8 field_0x6e
Definition J3DMaterialFactory_v21.h:111
const u8 newDither(int) const
Definition J3DMaterialFactory_v21.cpp:344
J3DBlendInfo * mpBlendInfo
Definition J3DMaterialFactory_v21.h:105
const u8 newZCompLoc(int) const
Definition J3DMaterialFactory_v21.cpp:335
J3DAlphaCompInfo * mpAlphaCompInfo
Definition J3DMaterialFactory_v21.h:104
J3DTevSwapModeInfo * mpTevSwapModeInfo
Definition J3DMaterialFactory_v21.h:101
J3DTevOrderInfo * mpTevOrderInfo
Definition J3DMaterialFactory_v21.h:96
J3DMaterialInitData_v21 * mpMaterialInitData
Definition J3DMaterialFactory_v21.h:84
J3DFog newFog(int) const
Definition J3DMaterialFactory_v21.cpp:299
J3DTexMtxInfo * field_0x28
Definition J3DMaterialFactory_v21.h:93
GXColor * mpMatColor
Definition J3DMaterialFactory_v21.h:86
GXCullMode * mpCullMode
Definition J3DMaterialFactory_v21.h:95
J3DColorChanInfo * mpColorChanInfo
Definition J3DMaterialFactory_v21.h:88
J3DBlend newBlend(int) const
Definition J3DMaterialFactory_v21.cpp:316
u8 * mpColorChanNum
Definition J3DMaterialFactory_v21.h:87
J3DColorChan newColorChan(int, int) const
Definition J3DMaterialFactory_v21.cpp:187
J3DFogInfo * mpFogInfo
Definition J3DMaterialFactory_v21.h:103
J3DMaterial * create(J3DMaterial *, int, u32) const
Definition J3DMaterialFactory_v21.cpp:81
J3DTevSwapModeTableInfo * mpTevSwapModeTableInfo
Definition J3DMaterialFactory_v21.h:102
u8 newCullMode(int) const
Definition J3DMaterialFactory_v21.cpp:225
GXColorS10 * mpTevColor
Definition J3DMaterialFactory_v21.h:97
const J3DZMode newZMode(int) const
Definition J3DMaterialFactory_v21.cpp:325
J3DTexCoordInfo * mpTexCoordInfo
Definition J3DMaterialFactory_v21.h:90
J3DTexMtxInfo * mpTexMtxInfo
Definition J3DMaterialFactory_v21.h:92
J3DTexMtx * newTexMtx(int, int) const
Definition J3DMaterialFactory_v21.cpp:216
J3DAlphaComp newAlphaComp(int) const
Definition J3DMaterialFactory_v21.cpp:308
J3DNBTScaleInfo * mpNBTScaleInfo
Definition J3DMaterialFactory_v21.h:109
u16 countUniqueMaterials()
Definition J3DMaterialFactory_v21.cpp:39
u16 field_0x6c
Definition J3DMaterialFactory_v21.h:110
J3DTevStage newTevStage(int, int) const
Definition J3DMaterialFactory_v21.cpp:282
GXColor * mpTevKColor
Definition J3DMaterialFactory_v21.h:98
u16 * mpMaterialID
Definition J3DMaterialFactory_v21.h:85
J3DZModeInfo * mpZModeInfo
Definition J3DMaterialFactory_v21.h:106
J3DGXColorS10 newTevColor(int, int) const
Definition J3DMaterialFactory_v21.cpp:253
u8 * mpTexGenNum
Definition J3DMaterialFactory_v21.h:89
J3DTevOrder newTevOrder(int, int) const
Definition J3DMaterialFactory_v21.cpp:244
J3DMaterialFactory_v21(J3DMaterialBlock_v21 const &)
Definition J3DMaterialFactory_v21.cpp:9
u32 countTexGens(int) const
Definition J3DMaterialFactory_v21.cpp:49
Definition J3DMaterial.h:16
Definition J3DTexture.h:48
enum _GXCullMode GXCullMode
unsigned long u32
Definition types.h:12
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition J3DMatBlock.h:1569
Definition J3DMatBlock.h:1599
Definition J3DMatBlock.h:1506
Definition J3DMatBlock.h:1522
Definition J3DMatBlock.h:94
Definition J3DMatBlock.h:142
Definition J3DStruct.h:124
Definition J3DMatBlock.h:1552
Definition J3DMatBlock.h:14
Definition J3DMatBlock.h:45
Definition J3DModelLoader.h:131
Definition J3DMaterialFactory_v21.h:16
u8 mMaterialMode
Definition J3DMaterialFactory_v21.h:17
u16 mTevSwapModeIdx[0x10]
Definition J3DMaterialFactory_v21.h:38
u16 mTexCoordIdx[8]
Definition J3DMaterialFactory_v21.h:27
u8 mTevKAlphaSel[0x10]
Definition J3DMaterialFactory_v21.h:34
u8 mTevKColorSel[0x10]
Definition J3DMaterialFactory_v21.h:33
u8 mZCompLocIdx
Definition J3DMaterialFactory_v21.h:22
u8 field_0x038[0x10]
Definition J3DMaterialFactory_v21.h:28
u16 mTevStageIdx[0x10]
Definition J3DMaterialFactory_v21.h:37
u8 mDitherIdx
Definition J3DMaterialFactory_v21.h:24
u16 mBlendIdx
Definition J3DMaterialFactory_v21.h:43
u16 mNBTScaleIdx
Definition J3DMaterialFactory_v21.h:44
u16 mTexMtxIdx[8]
Definition J3DMaterialFactory_v21.h:29
u16 mColorChanIdx[4]
Definition J3DMaterialFactory_v21.h:26
u8 field_0x12c[0x18]
Definition J3DMaterialFactory_v21.h:40
u8 mTevStageNumIdx
Definition J3DMaterialFactory_v21.h:21
u16 mMatColorIdx[2]
Definition J3DMaterialFactory_v21.h:25
u16 mTevOrderIdx[0x10]
Definition J3DMaterialFactory_v21.h:35
u8 mTexGenNumIdx
Definition J3DMaterialFactory_v21.h:20
u8 mColorChanNumIdx
Definition J3DMaterialFactory_v21.h:19
u16 mTevSwapModeTableIdx[4]
Definition J3DMaterialFactory_v21.h:39
u8 mZModeIdx
Definition J3DMaterialFactory_v21.h:23
u8 mCullModeIdx
Definition J3DMaterialFactory_v21.h:18
u16 mAlphaCompIdx
Definition J3DMaterialFactory_v21.h:42
u16 mFogIdx
Definition J3DMaterialFactory_v21.h:41
u16 mTexNoIdx[8]
Definition J3DMaterialFactory_v21.h:31
u8 field_0x058[0x2c]
Definition J3DMaterialFactory_v21.h:30
u16 mTevKColorIdx[4]
Definition J3DMaterialFactory_v21.h:32
u16 mTevColorIdx[4]
Definition J3DMaterialFactory_v21.h:36
Definition J3DStruct.h:142
Definition J3DMatBlock.h:72
Definition J3DTevs.h:244
Definition J3DTevs.h:261
Definition J3DTevs.h:12
Definition J3DTevs.h:67
Definition J3DTevs.h:54
Definition J3DTevs.h:41
Definition J3DTevs.h:282
Definition J3DTexture.h:78
Definition J3DTexture.h:96
Definition J3DStruct.h:97
Definition J3DMatBlock.h:1449
Definition J3DMatBlock.h:1462
Definition GXStruct.h:34
Definition GXStruct.h:30