Decompile modelPromoteNodeOffsetsToPointers

This commit is contained in:
Ryan Dwyer
2021-04-30 00:02:17 +10:00
parent 6e4d98275e
commit 99d2a91906
5 changed files with 133 additions and 266 deletions
+1
View File
@@ -1776,6 +1776,7 @@
#define MODELNODETYPE_0D 0x0d
#define MODELNODETYPE_0E 0x0e
#define MODELNODETYPE_0F 0x0f
#define MODELNODETYPE_11 0x11
#define MODELNODETYPE_TOGGLE 0x12
#define MODELNODETYPE_POSITIONHELD 0x15
#define MODELNODETYPE_16 0x16
+1 -1
View File
@@ -92,7 +92,7 @@ void modelRenderNodeGunfire(struct modelrenderdata *renderdata, struct model *mo
void modelRender(struct modelrenderdata *renderdata, struct model *model);
bool func000220fc(union modelrodata *rodata, Mtxf *mtx, struct coord *arg2, struct coord *arg3);
s32 func000225d4(struct model *model, struct coord *arg1, struct coord *arg2, struct modelnode **startnode);
void modelPromoteNodeOffsetsToPointers(struct modelnode *node, u32 arg1, u32 arg2);
void modelPromoteNodeOffsetsToPointers(struct modelnode *node, u32 vma, u32 fileramaddr);
void modelPromoteOffsetsToPointers(struct modelfiledata *filedata, u32 arg1, u32 arg2);
s32 modelCalculateRwDataIndexes(struct modelnode *node);
void modelCalculateRwDataLen(struct modelfiledata *filedata);
+32 -5
View File
@@ -532,8 +532,8 @@ struct modelrodata_position { // type 0x02
struct modelrodata_gundl { // type 0x04
Gfx *unk00;
Gfx *unk04;
void *unk08;
u32 unk0c;
void *baseaddr;
void *unk0c;
u16 unk10;
s16 unk12;
};
@@ -582,17 +582,39 @@ struct modelrodata_type0b { // type 0x0b
u32 unk30;
u32 unk34;
u32 unk38;
u32 unk3c;
void *unk3c;
u32 unk40;
u16 rwdataindex;
void *baseaddr;
};
struct modelrodata_gunfire { // type 0x0c
struct coord pos;
struct coord dim;
u32 texture;
void *texture;
f32 unk1c;
u16 rwdataindex;
void *baseaddr;
};
struct modelrodata_type0d { // type 0x0d
u32 unk00;
u32 unk04;
u32 unk08;
u32 unk0c;
void *unk10;
void *unk14;
u32 unk18;
void *baseaddr;
};
struct modelrodata_type11 { // type 0x11
u32 unk00;
u32 unk04;
u32 unk08;
u32 unk0c;
u32 unk10;
void *unk14;
};
struct modelrodata_toggle { // type 0x12
@@ -606,7 +628,10 @@ struct modelrodata_positionheld { // type 0x15
};
struct modelrodata_type16 { // type 0x16
struct coord pos;
u32 unk00;
void *unk04;
u32 unk08;
void *baseaddr;
};
struct modelrodata_headspot { // type 0x17
@@ -633,6 +658,8 @@ union modelrodata {
struct modelrodata_bbox bbox;
struct modelrodata_type0b type0b;
struct modelrodata_gunfire gunfire;
struct modelrodata_type0d type0d;
struct modelrodata_type11 type11;
struct modelrodata_toggle toggle;
struct modelrodata_positionheld positionheld;
struct modelrodata_type16 type16;