tp/include/JSystem/J3DGraphLoader/J3DMaterialFactory.h

66 lines
2.8 KiB
C++

#ifndef J3DMATERIALFACTORY_H
#define J3DMATERIALFACTORY_H
#include "JSystem/J3DGraphLoader/J3DModelLoader.h"
class J3DMaterial;
class J3DMaterialFactory {
public:
enum MaterialType {
MATERIAL_TYPE_NORMAL = 0,
MATERIAL_TYPE_LOCKED = 1,
MATERIAL_TYPE_PATCHED = 2,
};
/* 80330234 */ J3DMaterialFactory(J3DMaterialDLBlock const&);
/* 8032FFEC */ J3DMaterialFactory(J3DMaterialBlock const&);
/* 803302BC */ u16 countUniqueMaterials();
/* 80330304 */ void countTexGens(int) const;
/* 8033033C */ void countStages(int) const;
/* 803303C4 */ J3DMaterial* create(J3DMaterial*, J3DMaterialFactory::MaterialType, int, u32) const;
/* 80330440 */ void createNormalMaterial(J3DMaterial*, int, u32) const;
/* 80330D84 */ void createPatchedMaterial(J3DMaterial*, int, u32) const;
/* 8033168C */ void modifyPatchedCurrentMtx(J3DMaterial*, int) const;
/* 803317D4 */ void createLockedMaterial(J3DMaterial*, int, u32) const;
/* 80331A7C */ void calcSize(J3DMaterial*, J3DMaterialFactory::MaterialType, int, u32) const;
/* 80331AFC */ void calcSizeNormalMaterial(J3DMaterial*, int, u32) const;
/* 80331C30 */ void calcSizePatchedMaterial(J3DMaterial*, int, u32) const;
/* 80331D00 */ void calcSizeLockedMaterial(J3DMaterial*, int, u32) const;
/* 80331D18 */ void newMatColor(int, int) const;
/* 80331D74 */ void newColorChanNum(int) const;
/* 80331DAC */ void newColorChan(int, int) const;
/* 80331F50 */ void newAmbColor(int, int) const;
/* 80331FAC */ void newTexGenNum(int) const;
/* 80331FE4 */ void newTexCoord(int, int) const;
/* 80332044 */ void newTexMtx(int, int) const;
/* 803320CC */ void newCullMode(int) const;
/* 8033210C */ void newTexNo(int, int) const;
/* 80332154 */ void newTevOrder(int, int) const;
/* 803321A0 */ void newTevColor(int, int) const;
/* 80332210 */ void newTevKColor(int, int) const;
/* 8033226C */ void newTevStageNum(int) const;
/* 803322A4 */ void newTevStage(int, int) const;
/* 80332304 */ void newTevSwapModeTable(int, int) const;
/* 803323A0 */ void newIndTexStageNum(int) const;
/* 803323C8 */ void newIndTexOrder(int, int) const;
/* 8033240C */ void newIndTexMtx(int, int) const;
/* 803324B4 */ void newIndTevStage(int, int) const;
/* 80332648 */ void newIndTexCoordScale(int, int) const;
/* 8033268C */ void newFog(int) const;
/* 80332768 */ void newAlphaComp(int) const;
/* 803327E8 */ void newBlend(int) const;
/* 8033282C */ void newZMode(int) const;
/* 8033288C */ void newZCompLoc(int) const;
/* 803328C4 */ void newDither(int) const;
/* 803328FC */ void newNBTScale(int) const;
u16 getMaterialID(int i_idx) { return mpMaterialID[i_idx]; }
/* 0x00 */ u8 field_0x00[8];
/* 0x08 */ u16* mpMaterialID;
/* 0x0C */ u8 field_0x0c[0x7C];
};
#endif /* J3DMATERIALFACTORY_H */