From b70c0a03797a2710913584ae2bf7ab3e604d004a Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Sun, 5 Nov 2023 23:40:49 -0500 Subject: [PATCH] Set up header for J3DModelLoader --- .../JSystem/J3DGraphLoader/J3DModelLoader.h | 65 ++++++++++ .../J3DGraphLoader/J3DModelLoaderCalcSize.h | 2 +- src/JSystem/J3DGraphLoader/J3DModelLoader.cpp | 120 +++--------------- .../J3DGraphLoader/J3DModelLoaderCalcSize.cpp | 16 +-- 4 files changed, 89 insertions(+), 114 deletions(-) diff --git a/include/JSystem/J3DGraphLoader/J3DModelLoader.h b/include/JSystem/J3DGraphLoader/J3DModelLoader.h index 987a74320..bb4eb594f 100644 --- a/include/JSystem/J3DGraphLoader/J3DModelLoader.h +++ b/include/JSystem/J3DGraphLoader/J3DModelLoader.h @@ -2,9 +2,20 @@ #define J3DMODELLOADER_H #include "dolphin/types.h" +#include "JSystem/J3DGraphAnimator/J3DModelData.h" class J3DModelData; class J3DMaterialTable; +class J3DModelInfoBlock; +class J3DVertexBlock; +class J3DEnvelopBlock; +class J3DDrawBlock; +class J3DJointBlock; +class J3DShapeBlock; +class J3DTextureBlock; +class J3DMaterialBlock; +class J3DMaterialBlock_v21; +class J3DMaterialDLBlock; class J3DModelLoaderDataBase { public: @@ -13,4 +24,58 @@ public: static J3DMaterialTable* loadMaterialTable(void const*); }; +class J3DModelLoader { +public: + virtual void load(const void*, u32); + virtual void loadMaterialTable(const void*); + virtual void loadBinaryDisplayList(const void*, u32); + virtual void calcLoadSize(const void*, u32); + virtual void calcLoadMaterialTableSize(const void*); + virtual void calcLoadBinaryDisplayListSize(const void*, u32); + virtual void countMaterialNum(const void*); + virtual void setupBBoardInfo(); + virtual ~J3DModelLoader() {} + virtual void readMaterial(const J3DMaterialBlock*, u32) {} + virtual void readMaterial_v21(const J3DMaterialBlock_v21*, u32) {} + virtual void readMaterialTable(const J3DMaterialBlock*, u32) {} + virtual void readMaterialTable_v21(const J3DMaterialBlock_v21*, u32) {} + virtual s32 calcSizeMaterial(const J3DMaterialBlock*, u32) { return 0; } + virtual s32 calcSizeMaterialTable(const J3DMaterialBlock*, u32) { return 0; } + + void readInformation(const J3DModelInfoBlock*, u32); + void readVertex(const J3DVertexBlock*); + void readEnvelop(const J3DEnvelopBlock*); + void readDraw(const J3DDrawBlock*); + void readJoint(const J3DJointBlock*); + void readShape(const J3DShapeBlock*, u32); + void readTexture(const J3DTextureBlock*); + void readTextureTable(const J3DTextureBlock*); + void readPatchedMaterial(const J3DMaterialBlock*, u32); + void readMaterialDL(const J3DMaterialDLBlock*, u32); + void modifyMaterial(u32); + void calcSizeInformation(const J3DModelInfoBlock*, u32); + void calcSizeJoint(const J3DJointBlock*); + void calcSizeShape(const J3DShapeBlock*, u32); + void calcSizeTexture(const J3DTextureBlock*); + void calcSizeTextureTable(const J3DTextureBlock*); + void calcSizePatchedMaterial(const J3DMaterialBlock*, u32); + void calcSizeMaterialDL(const J3DMaterialDLBlock*, u32); +}; + +class J3DModelLoader_v21 : public J3DModelLoader { +public: + ~J3DModelLoader_v21() {} + void readMaterial_v21(const J3DMaterialBlock_v21*, u32); + void readMaterialTable_v21(const J3DMaterialBlock_v21*, u32); +}; + +class J3DModelLoader_v26 : public J3DModelLoader { +public: + ~J3DModelLoader_v26() {} + void readMaterial(const J3DMaterialBlock*, u32); + void readMaterialTable(const J3DMaterialBlock*, u32); + s32 calcSizeMaterial(const J3DMaterialBlock*, u32); + s32 calcSizeMaterialTable(const J3DMaterialBlock*, u32); +}; + #endif /* J3DMODELLOADER_H */ diff --git a/include/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.h b/include/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.h index 5b231aeb1..b0ff45521 100644 --- a/include/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.h +++ b/include/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.h @@ -1,6 +1,6 @@ #ifndef J3DMODELLOADERCALCSIZE_H #define J3DMODELLOADERCALCSIZE_H -#include "dolphin/types.h" +#include "JSystem/J3DGraphLoader/J3DModelLoader.h" #endif /* J3DMODELLOADERCALCSIZE_H */ diff --git a/src/JSystem/J3DGraphLoader/J3DModelLoader.cpp b/src/JSystem/J3DGraphLoader/J3DModelLoader.cpp index 4dc0bc082..cc93848eb 100644 --- a/src/JSystem/J3DGraphLoader/J3DModelLoader.cpp +++ b/src/JSystem/J3DGraphLoader/J3DModelLoader.cpp @@ -7,22 +7,22 @@ #include "dolphin/types.h" /* 802FB758-802FB8A4 .text load__22J3DModelLoaderDataBaseFPCvUl */ -J3DModelData * J3DModelLoaderDataBase::load(const void*, unsigned long) { +J3DModelData* J3DModelLoaderDataBase::load(const void*, u32) { /* Nonmatching */ } /* 802FB8A4-802FB94C .text loadMaterialTable__22J3DModelLoaderDataBaseFPCv */ -J3DMaterialTable * J3DModelLoaderDataBase::loadMaterialTable(const void*) { +J3DMaterialTable* J3DModelLoaderDataBase::loadMaterialTable(const void*) { /* Nonmatching */ } /* 802FB94C-802FBA04 .text loadBinaryDisplayList__22J3DModelLoaderDataBaseFPCvUl */ -J3DModelData * J3DModelLoaderDataBase::loadBinaryDisplayList(const void*, unsigned long) { +J3DModelData* J3DModelLoaderDataBase::loadBinaryDisplayList(const void*, u32) { /* Nonmatching */ } /* 802FBA04-802FBCC4 .text load__14J3DModelLoaderFPCvUl */ -void J3DModelLoader::load(const void*, unsigned long) { +void J3DModelLoader::load(const void*, u32) { /* Nonmatching */ } @@ -32,7 +32,7 @@ void J3DModelLoader::loadMaterialTable(const void*) { } /* 802FBE24-802FC0CC .text loadBinaryDisplayList__14J3DModelLoaderFPCvUl */ -void J3DModelLoader::loadBinaryDisplayList(const void*, unsigned long) { +void J3DModelLoader::loadBinaryDisplayList(const void*, u32) { /* Nonmatching */ } @@ -42,12 +42,12 @@ void J3DModelLoader::setupBBoardInfo() { } /* 802FC234-802FC3E4 .text readInformation__14J3DModelLoaderFPC17J3DModelInfoBlockUl */ -void J3DModelLoader::readInformation(const J3DModelInfoBlock*, unsigned long) { +void J3DModelLoader::readInformation(const J3DModelInfoBlock*, u32) { /* Nonmatching */ } /* 802FC3E4-802FC410 .text getFmtType__FP17_GXVtxAttrFmtList7_GXAttr */ -void getFmtType(_GXVtxAttrFmtList*, _GXAttr) { +void getFmtType(GXVtxAttrFmtList*, GXAttr) { /* Nonmatching */ } @@ -72,17 +72,17 @@ void J3DModelLoader::readJoint(const J3DJointBlock*) { } /* 802FC834-802FCAB0 .text readMaterial__18J3DModelLoader_v26FPC16J3DMaterialBlockUl */ -void J3DModelLoader_v26::readMaterial(const J3DMaterialBlock*, unsigned long) { +void J3DModelLoader_v26::readMaterial(const J3DMaterialBlock*, u32) { /* Nonmatching */ } /* 802FCAB0-802FCD14 .text readMaterial_v21__18J3DModelLoader_v21FPC20J3DMaterialBlock_v21Ul */ -void J3DModelLoader_v21::readMaterial_v21(const J3DMaterialBlock_v21*, unsigned long) { +void J3DModelLoader_v21::readMaterial_v21(const J3DMaterialBlock_v21*, u32) { /* Nonmatching */ } /* 802FCD14-802FCE50 .text readShape__14J3DModelLoaderFPC13J3DShapeBlockUl */ -void J3DModelLoader::readShape(const J3DShapeBlock*, unsigned long) { +void J3DModelLoader::readShape(const J3DShapeBlock*, u32) { /* Nonmatching */ } @@ -92,12 +92,12 @@ void J3DModelLoader::readTexture(const J3DTextureBlock*) { } /* 802FCF14-802FD050 .text readMaterialTable__18J3DModelLoader_v26FPC16J3DMaterialBlockUl */ -void J3DModelLoader_v26::readMaterialTable(const J3DMaterialBlock*, unsigned long) { +void J3DModelLoader_v26::readMaterialTable(const J3DMaterialBlock*, u32) { /* Nonmatching */ } /* 802FD050-802FD18C .text readMaterialTable_v21__18J3DModelLoader_v21FPC20J3DMaterialBlock_v21Ul */ -void J3DModelLoader_v21::readMaterialTable_v21(const J3DMaterialBlock_v21*, unsigned long) { +void J3DModelLoader_v21::readMaterialTable_v21(const J3DMaterialBlock_v21*, u32) { /* Nonmatching */ } @@ -107,106 +107,16 @@ void J3DModelLoader::readTextureTable(const J3DTextureBlock*) { } /* 802FD250-802FD390 .text readPatchedMaterial__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::readPatchedMaterial(const J3DMaterialBlock*, unsigned long) { +void J3DModelLoader::readPatchedMaterial(const J3DMaterialBlock*, u32) { /* Nonmatching */ } /* 802FD390-802FD548 .text readMaterialDL__14J3DModelLoaderFPC18J3DMaterialDLBlockUl */ -void J3DModelLoader::readMaterialDL(const J3DMaterialDLBlock*, unsigned long) { +void J3DModelLoader::readMaterialDL(const J3DMaterialDLBlock*, u32) { /* Nonmatching */ } /* 802FD548-802FD5C4 .text modifyMaterial__14J3DModelLoaderFUl */ -void J3DModelLoader::modifyMaterial(unsigned long) { - /* Nonmatching */ -} - -/* 802FD5C4-802FD620 .text __dt__18J3DModelLoader_v26Fv */ -J3DModelLoader_v26::~J3DModelLoader_v26() { - /* Nonmatching */ -} - -/* 802FD620-802FD67C .text __dt__18J3DModelLoader_v21Fv */ -J3DModelLoader_v21::~J3DModelLoader_v21() { - /* Nonmatching */ -} - -/* 802FD67C-802FD6C4 .text __dt__14J3DModelLoaderFv */ -J3DModelLoader::~J3DModelLoader() { - /* Nonmatching */ -} - -/* 802FD6C4-802FD6C8 .text readMaterial_v21__14J3DModelLoaderFPC20J3DMaterialBlock_v21Ul */ -void J3DModelLoader::readMaterial_v21(const J3DMaterialBlock_v21*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6C8-802FD6CC .text readMaterial__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::readMaterial(const J3DMaterialBlock*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6CC-802FD6D0 .text readMaterialTable_v21__14J3DModelLoaderFPC20J3DMaterialBlock_v21Ul */ -void J3DModelLoader::readMaterialTable_v21(const J3DMaterialBlock_v21*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6D0-802FD6D4 .text readMaterialTable__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::readMaterialTable(const J3DMaterialBlock*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6D4-802FD6DC .text calcSizeMaterial__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::calcSizeMaterial(const J3DMaterialBlock*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6DC-802FD6E4 .text calcSizeMaterialTable__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::calcSizeMaterialTable(const J3DMaterialBlock*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD6E4-802FD738 .text __ct__11J3DMaterialFv */ -J3DMaterial::J3DMaterial() { - /* Nonmatching */ -} - -/* 802FD738-802FD780 .text __dt__10J3DTextureFv */ -J3DTexture::~J3DTexture() { - /* Nonmatching */ -} - -/* 802FD780-802FD798 .text JSUConvertOffsetToPtr<7ResTIMG>__FPCvPCv */ -void JSUConvertOffsetToPtr(const void*, const void*) { - /* Nonmatching */ -} - -/* 802FD798-802FD7B0 .text JSUConvertOffsetToPtr__FPCvPCv */ -void JSUConvertOffsetToPtr(const void*, const void*) { - /* Nonmatching */ -} - -/* 802FD7B0-802FD7C8 .text JSUConvertOffsetToPtr__FPCvPCv */ -void JSUConvertOffsetToPtr(const void*, const void*) { - /* Nonmatching */ -} - -/* 802FD7C8-802FD7E0 .text JSUConvertOffsetToPtr<17_GXVtxAttrFmtList>__FPCvPCv */ -void JSUConvertOffsetToPtr<_GXVtxAttrFmtList>(const void*, const void*) { - /* Nonmatching */ -} - -/* 802FD7E0-802FD7F8 .text JSUConvertOffsetToPtr<17J3DModelHierarchy>__FPCvPCv */ -void JSUConvertOffsetToPtr(const void*, const void*) { - /* Nonmatching */ -} - -/* 802FD7F8-802FD810 .text JSUConvertOffsetToPtr<16J3DShapeInitData>__FPCvUl */ -void JSUConvertOffsetToPtr(const void*, unsigned long) { - /* Nonmatching */ -} - -/* 802FD810-802FD828 .text JSUConvertOffsetToPtr__FPCvUl */ -void JSUConvertOffsetToPtr(const void*, unsigned long) { +void J3DModelLoader::modifyMaterial(u32) { /* Nonmatching */ } diff --git a/src/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.cpp b/src/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.cpp index d34fb02ad..fd1eb94f2 100644 --- a/src/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.cpp +++ b/src/JSystem/J3DGraphLoader/J3DModelLoaderCalcSize.cpp @@ -12,7 +12,7 @@ void J3DModelLoader::countMaterialNum(const void*) { } /* 802FD868-802FDA10 .text calcLoadSize__14J3DModelLoaderFPCvUl */ -void J3DModelLoader::calcLoadSize(const void*, unsigned long) { +void J3DModelLoader::calcLoadSize(const void*, u32) { /* Nonmatching */ } @@ -22,12 +22,12 @@ void J3DModelLoader::calcLoadMaterialTableSize(const void*) { } /* 802FDB0C-802FDD28 .text calcLoadBinaryDisplayListSize__14J3DModelLoaderFPCvUl */ -void J3DModelLoader::calcLoadBinaryDisplayListSize(const void*, unsigned long) { +void J3DModelLoader::calcLoadBinaryDisplayListSize(const void*, u32) { /* Nonmatching */ } /* 802FDD28-802FDDB4 .text calcSizeInformation__14J3DModelLoaderFPC17J3DModelInfoBlockUl */ -void J3DModelLoader::calcSizeInformation(const J3DModelInfoBlock*, unsigned long) { +void J3DModelLoader::calcSizeInformation(const J3DModelInfoBlock*, u32) { /* Nonmatching */ } @@ -37,12 +37,12 @@ void J3DModelLoader::calcSizeJoint(const J3DJointBlock*) { } /* 802FDDE0-802FDECC .text calcSizeMaterial__18J3DModelLoader_v26FPC16J3DMaterialBlockUl */ -void J3DModelLoader_v26::calcSizeMaterial(const J3DMaterialBlock*, unsigned long) { +s32 J3DModelLoader_v26::calcSizeMaterial(const J3DMaterialBlock*, u32) { /* Nonmatching */ } /* 802FDECC-802FDF70 .text calcSizeShape__14J3DModelLoaderFPC13J3DShapeBlockUl */ -void J3DModelLoader::calcSizeShape(const J3DShapeBlock*, unsigned long) { +void J3DModelLoader::calcSizeShape(const J3DShapeBlock*, u32) { /* Nonmatching */ } @@ -52,7 +52,7 @@ void J3DModelLoader::calcSizeTexture(const J3DTextureBlock*) { } /* 802FDF8C-802FE01C .text calcSizeMaterialTable__18J3DModelLoader_v26FPC16J3DMaterialBlockUl */ -void J3DModelLoader_v26::calcSizeMaterialTable(const J3DMaterialBlock*, unsigned long) { +s32 J3DModelLoader_v26::calcSizeMaterialTable(const J3DMaterialBlock*, u32) { /* Nonmatching */ } @@ -62,11 +62,11 @@ void J3DModelLoader::calcSizeTextureTable(const J3DTextureBlock*) { } /* 802FE03C-802FE0CC .text calcSizePatchedMaterial__14J3DModelLoaderFPC16J3DMaterialBlockUl */ -void J3DModelLoader::calcSizePatchedMaterial(const J3DMaterialBlock*, unsigned long) { +void J3DModelLoader::calcSizePatchedMaterial(const J3DMaterialBlock*, u32) { /* Nonmatching */ } /* 802FE0CC-802FE1A4 .text calcSizeMaterialDL__14J3DModelLoaderFPC18J3DMaterialDLBlockUl */ -void J3DModelLoader::calcSizeMaterialDL(const J3DMaterialDLBlock*, unsigned long) { +void J3DModelLoader::calcSizeMaterialDL(const J3DMaterialDLBlock*, u32) { /* Nonmatching */ }