summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorenzofc708 <47937189+enzofc708@users.noreply.github.com>2026-04-16 15:38:59 -0300
committerGitHub <noreply@github.com>2026-04-16 20:38:59 +0200
commitef2caebcefe1a0d370a56340944931f71bcd39a8 (patch)
tree7cdd9e0447e418d937effd0c0424c6909913c077 /include
parent98cc0af690719f10bd7b67c1c11d207bfcdbbfe7 (diff)
Decomp sbc.c (100%) (#144)
* start sbc.cpp * add G3d_SBCRender_007 * match G3d_SBCRender_007 * match G3d_SBCRender_008 * match G3d_SBCRender_SKN * fix EUR relocs file * match G3d_SBCRender_00C * match G3d_SBCRender_00D * complete sbc.cpp * fix EUR delinks
Diffstat (limited to 'include')
-rw-r--r--include/Actor/Navi/ActorNavi.hpp3
-rw-r--r--include/DTCM/UnkStruct_027e037c.h (renamed from include/DTCM/UnkStruct_027e037c.hpp)7
-rw-r--r--include/Render/ModelRender.hpp43
3 files changed, 12 insertions, 41 deletions
diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp
index 841c91f1..c50ee23c 100644
--- a/include/Actor/Navi/ActorNavi.hpp
+++ b/include/Actor/Navi/ActorNavi.hpp
@@ -5,6 +5,7 @@
#include "Unknown/UnkStruct_02057200.hpp"
#include "Unknown/UnkStruct_ov000_020beba8.hpp"
#include "Unknown/UnkStruct_ov000_020c0c08.hpp"
+#include "nds/g3d/sbc.h"
class UnkStruct_ov000_020b8110 : public UnkStruct_ov000_020beba8 {
public:
@@ -45,7 +46,7 @@ public:
/* 344 */ q20 mUnk_344;
/* 348 */ unk32 mUnk_348;
/* 34c */ ActorNaviBase_Unk1 mUnk_34c[4];
- /* 35c */ ModelRender_UnkBoneMatrixStruct unkBoneMatrixStruct;
+ /* 35c */ G3d_BoneMtxStruct unkBoneMatrixStruct;
/* 3b4 */ EquipHammer *mHammer;
/* 3b8 */ UnkStruct_02057200 mUnk_3b8;
/* 3c0 */ u8 mUnk_3c0;
diff --git a/include/DTCM/UnkStruct_027e037c.hpp b/include/DTCM/UnkStruct_027e037c.h
index 96359f03..81b20b1a 100644
--- a/include/DTCM/UnkStruct_027e037c.hpp
+++ b/include/DTCM/UnkStruct_027e037c.h
@@ -5,8 +5,7 @@
#include <nds/math.h>
-struct UnkStruct_027e037c {
-public:
+typedef struct UnkStruct_027e037c_ {
/* 000 */ unk32 mUnk_000;
/* 004 */ unk32 mUnk_004;
/* 008 */ Mat4p mUnk_008;
@@ -38,6 +37,6 @@ public:
/* 160 */ Mat4x3p mUnk_160;
/* 190 */ Mat4x3p mUnk_190;
/* 1c0 */
-};
+} UnkStruct_027e037c;
-extern UnkStruct_027e037c data_027e037c;
+extern UnkStruct_027e037c data_027e037c; \ No newline at end of file
diff --git a/include/Render/ModelRender.hpp b/include/Render/ModelRender.hpp
index d0fca92a..846ad1f0 100644
--- a/include/Render/ModelRender.hpp
+++ b/include/Render/ModelRender.hpp
@@ -3,6 +3,7 @@
#include "global.h"
#include "types.h"
+#include "nds/g3d/sbc.h"
#include <nds/math.h>
#include "System/SysNew.hpp"
@@ -10,39 +11,9 @@
class ModelRender;
-struct ModelRender_UnkBoneMatrixStruct {
- /* 00 */ unk8 mUnk_00[0x28];
- /* 28 */ Mat3p mUnk_28;
- /* 4c */ unk8 mUnk_4c[0xC];
- /* 58 */
-};
-
-struct ModelRender_UnkStruct_4 {
- /* 00 */ unk32 flags;
- /* 04 */ void *mLcdcAddr;
- /* 08 */ void *mUnk_08; // this attribute is related to UnkStruct_ov000_020c0c08
- /* 0c */ void *mUnkTransformFunc;
- /* 10 */ void *mUnk_10; // also related to UnkStruct_ov000_020c0c08
- /* 14 */ void *mUnkMaterialFunc;
- /* 18 */ void *mUnk_18; // also related to UnkStruct_ov000_020c0c08
- /* 1c */ void *mUnkVisibilityFunc;
- /* 20 */ void *mUnkFunc_20;
- /* 24 */ unk8 mUnk_24;
- /* 25 */ unk8 mUnk_25;
- /* 26 */ unk8 mUnk_26[2];
- /* 28 */ void *mUnk_28;
- /* 2c */ ModelRender *mUnk_2c; // pointer to self?
- /* 30 */ unk32 mUnk_30;
- /* 34 */ ModelRender_UnkBoneMatrixStruct *unkBoneMatrixArray1;
- /* 38 */ unk32 mUnk_38[3];
- /* 44 */ unk32 mUnk_44[2];
- /* 4c */ unk32 mUnk_4c[2];
- /* 54 */
-};
-
struct ModelRenderCommandsData {
/* 00 */ u8 command;
- /* 04 */ ModelRender_UnkStruct_4 *unkStruct4;
+ /* 04 */ G3d_RenderObject *unkStruct4;
/* 08 */
};
@@ -51,13 +22,13 @@ class ItemModel;
class ModelRender : public SysObject {
public:
/* 00 (vtable) */
- /* 04 */ ModelRender_UnkStruct_4 mUnk_04;
- /* 58 */ ModelRender_UnkBoneMatrixStruct *unkBoneMatrixArray2;
+ /* 04 */ G3d_RenderObject renderObj;
+ /* 58 */ G3d_BoneMtxStruct *unkBoneMatrixArray2;
/* 5c */
/* 00 */ virtual ~ModelRender();
/* 08 */ virtual void *GetLcdcAddress();
- /* 0c */ virtual void Init_ModelRender_UnkStruct_4(ItemModel *model);
+ /* 0c */ virtual void Init_RenderObject(ItemModel *model);
/* 10 */ virtual void SetTransform(Vec3p *scale, Mat3p *rotation, Vec3p *translation);
/* 14 */ virtual void SetRotationTranslation(Mat3p *rotation, Vec3p *translation);
/* 18 */ virtual void SetTranslation(Vec3p *translation);
@@ -73,11 +44,11 @@ public:
/* 40 */
ModelRender(ItemModel *itemModel);
- ModelRender_UnkBoneMatrixStruct *UnkGetBoneMatrix(s32 index);
+ G3d_BoneMtxStruct *UnkGetBoneMatrix(s32 index);
s32 GetObjectIndex(char *objectName);
s32 GetMaterialIndex(char *materialName);
void InitBoneMatrixArrays(u32 idLength);
- void SetUnkBoneMatrixArray1(ModelRender_UnkBoneMatrixStruct *boneMatrix);
+ void SetUnkBoneMatrixArray1(G3d_BoneMtxStruct *boneMatrix);
void UnkInit_Struct4_Params(u8 param1, u8 param2);
void func_ov000_020b413c(unk16 param1, Vec3p *param2);
};