SSBM Decomp
Loading...
Searching...
No Matches
fog.h
Go to the documentation of this file.
1#ifndef SYSDOLPHIN_BASELIB_FOG_H
2#define SYSDOLPHIN_BASELIB_FOG_H
3
4#include <Runtime/platform.h>
5
6#include <sysdolphin/baselib/forward.h> // IWYU pragma: export
7
8#include <dolphin/gx.h>
9#include <dolphin/mtx.h>
11
12struct HSD_FogAdj {
13 /* 0x00 */ HSD_Obj parent;
14 /* 0x08 */ s16 center;
15 /* 0x0A */ u16 width;
16 /* 0x0C */ Mtx44 mtx;
17 /* 0x3C */ HSD_AObj* aobj;
18};
19
20struct HSD_Fog {
21 /* 0x00 */ HSD_Obj parent;
22 /* 0x08 */ u32 type;
23 /* 0x0C */ HSD_FogAdj* fog_adj;
24 /* 0x10 */ f32 start;
25 /* 0x14 */ f32 end;
26 /* 0x18 */ GXColor color;
27 /* 0x1C */ HSD_AObj* aobj;
28};
29
31 /* 0x00 */ u16 center;
32 /* 0x02 */ u16 width;
33 /* 0x04 */ Mtx44 mtx;
34};
35
39
43
45 /* 0x00 */ u32 type;
47 /* 0x08 */ f32 start;
48 /* 0x0C */ f32 end;
49 /* 0x10 */ GXColor color;
50};
51
52void HSD_FogSet(HSD_Fog*);
56void HSD_FogReqAnimByFlags(HSD_Fog*, u32 flags, f32 frame);
57void FogUpdateFunc(void* obj, enum_t type, HSD_ObjData* fval);
59
63void HSD_FogReqAnim(HSD_Fog* fog, f32 frame);
65
66#endif
f32 Mtx44[4][4]
Definition mtx.h:51
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
float f32
Definition types.h:13
unsigned short int u16
Definition types.h:7
void HSD_FogReqAnim(HSD_Fog *fog, f32 frame)
Definition fog.c:173
void FogUpdateFunc(void *obj, enum_t type, HSD_ObjData *fval)
Definition fog.c:193
void HSD_FogReqAnimByFlags(HSD_Fog *, u32 flags, f32 frame)
Definition fog.c:178
HSD_FogAdj * HSD_FogAdjLoadDesc(HSD_FogAdjDesc *)
Definition fog.c:133
HSD_FogAdj * HSD_FogAdjAlloc(void)
Definition fog.c:126
void HSD_FogSet(HSD_Fog *)
Definition fog.c:19
void HSD_FogAdjInit(HSD_FogAdj *, HSD_FogAdjDesc *)
Definition fog.c:141
HSD_Fog * HSD_FogLoadDesc(HSD_FogDesc *desc)
Definition fog.c:93
void HSD_FogInterpretAnim(HSD_Fog *fog)
Definition fog.c:186
HSD_Fog * HSD_FogAlloc(void)
Definition fog.c:86
void HSD_Fog_8037DE7C(HSD_Fog *fog, HSD_AObjDesc *desc)
HSD_FogAddAnim ?
Definition fog.c:163
void HSD_FogInit(HSD_Fog *, HSD_FogDesc *)
Definition fog.c:104
u8 desc[6][3]
Definition mnruleplus.c:98
#define fval
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:28
void * obj
Definition pobj.c:38
Definition GXStruct.h:29
Definition aobj.h:50
Definition aobj.h:40
Definition fog.h:30
u16 width
Definition fog.h:32
Mtx44 mtx
Definition fog.h:33
u16 center
Definition fog.h:31
Definition fog.h:40
HSD_ObjInfo parent
Definition fog.h:41
Definition fog.h:12
u16 width
Definition fog.h:15
HSD_AObj * aobj
Definition fog.h:17
Mtx44 mtx
Definition fog.h:16
s16 center
Definition fog.h:14
HSD_Obj parent
Definition fog.h:13
Definition fog.h:44
f32 start
Definition fog.h:47
GXColor color
Definition fog.h:49
f32 end
Definition fog.h:48
u32 type
Definition fog.h:45
HSD_FogAdjDesc * fogadjdesc
Definition fog.h:46
Definition fog.h:36
HSD_ObjInfo parent
Definition fog.h:37
Definition fog.h:20
f32 end
Definition fog.h:25
HSD_AObj * aobj
Definition fog.h:27
HSD_FogAdj * fog_adj
Definition fog.h:23
GXColor color
Definition fog.h:26
HSD_Obj parent
Definition fog.h:21
u32 type
Definition fog.h:22
f32 start
Definition fog.h:24
Definition object.h:66
Definition object.h:60
Definition fobj.h:64