Clean up Hsfdraw Types

Also added new HsfDrawData type to hsfdraw.h
This commit is contained in:
gamemasterplc 2024-05-27 13:41:25 -05:00
parent 33b771b393
commit e72df6f6b0
6 changed files with 212 additions and 181 deletions

View file

@ -28,6 +28,23 @@ typedef struct {
/* 0x40 */ char unk40[4];
} HsfdrawStruct01; // Size 0x44
typedef struct hsf_draw_data {
s32 dlOfs;
s32 dlSize;
u16 polyCnt;
u32 flags;
} HsfDrawData;
typedef struct hsf_const_data {
u32 flags;
s16 hook;
HsfDrawData *drawData;
void *dlBuf;
Mtx matrix;
AnimData *hiliteMap;
} HsfConstData;
void Hu3DDrawPreInit(void);
void Hu3DDraw(ModelData *arg0, Mtx arg1, Vec *arg2);
s32 ObjCullCheck(HsfData *arg0, HsfObject *arg1, Mtx arg2);

View file

@ -159,16 +159,6 @@ typedef struct hsf_face {
float nbt[3];
} HsfFace;
typedef struct hsf_const_data {
u32 flags;
s16 hook;
u8 unk6[2];
void *unk08;
void *unk0C;
Mtx unk10;
AnimData *hilite_map;
} HsfConstData;
typedef struct hsf_transform {
Vec pos;
Vec rot;
@ -312,10 +302,11 @@ typedef struct hsf_light {
float ref_brightness;
float cutoff;
} HsfLight;
typedef struct hsf_object {
char *name;
u32 type;
HsfConstData *constData;
void *constData;
u32 flags;
union {
HsfObjectData data;