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 <platform.h>
5
6#include "baselib/forward.h" // IWYU pragma: export
8
9#include "baselib/object.h"
10
11#include <dolphin/gx/types.h>
12#include <dolphin/mtx/types.h>
13
14struct HSD_FogAdj {
15 /* 0x00 */ HSD_Obj parent;
16 /* 0x08 */ s16 center;
17 /* 0x0A */ u16 width;
18 /* 0x0C */ Mtx44 mtx;
19 /* 0x3C */ HSD_AObj* aobj;
20};
21
22struct HSD_Fog {
23 /* 0x00 */ HSD_Obj parent;
24 /* 0x08 */ u32 type;
25 /* 0x0C */ HSD_FogAdj* fog_adj;
26 /* 0x10 */ f32 start;
27 /* 0x14 */ f32 end;
28 /* 0x18 */ GXColor color;
29 /* 0x1C */ HSD_AObj* aobj;
30};
31
33 /* 0x00 */ u16 center;
34 /* 0x02 */ u16 width;
35 /* 0x04 */ Mtx44 mtx;
36};
37
41
45
47 /* 0x00 */ u32 type;
49 /* 0x08 */ f32 start;
50 /* 0x0C */ f32 end;
51 /* 0x10 */ GXColor color;
52};
53
54void HSD_FogSet(HSD_Fog*);
58void HSD_FogReqAnimByFlags(HSD_Fog*, u32 flags, f32 frame);
59void FogUpdateFunc(void* obj, enum_t type, HSD_ObjData* fval);
61
64void HSD_Fog_8037DE7C(HSD_Fog* fog, HSD_AObjDesc* desc);
65void HSD_FogReqAnim(HSD_Fog* fog, f32 frame);
67
68#endif
f32 Mtx44[4][4]
Definition forward.h:9
void HSD_FogReqAnim(HSD_Fog *fog, f32 frame)
Definition fog.c:175
void FogUpdateFunc(void *obj, enum_t type, HSD_ObjData *fval)
Definition fog.c:195
void HSD_FogReqAnimByFlags(HSD_Fog *, u32 flags, f32 frame)
Definition fog.c:180
HSD_FogAdj * HSD_FogAdjLoadDesc(HSD_FogAdjDesc *)
Definition fog.c:135
HSD_FogAdj * HSD_FogAdjAlloc(void)
Definition fog.c:128
void HSD_FogSet(HSD_Fog *)
Definition fog.c:21
void HSD_FogAdjInit(HSD_FogAdj *, HSD_FogAdjDesc *)
Definition fog.c:143
HSD_Fog * HSD_FogLoadDesc(HSD_FogDesc *desc)
Definition fog.c:95
void HSD_FogInterpretAnim(HSD_Fog *fog)
Definition fog.c:188
HSD_Fog * HSD_FogAlloc(void)
Definition fog.c:88
void HSD_Fog_8037DE7C(HSD_Fog *fog, HSD_AObjDesc *desc)
Definition fog.c:165
void HSD_FogInit(HSD_Fog *, HSD_FogDesc *)
Definition fog.c:106
unsigned long u32
An unsigned 32-bit integer.
Definition platform.h:26
float f32
A 32-bit floating-point number.
Definition platform.h:62
signed short s16
A signed 16-bit integer.
Definition platform.h:11
unsigned short u16
An unsigned 16-bit integer.
Definition platform.h:23
int enum_t
The underlying type of an enum, used as a placeholder.
Definition platform.h:74
void * obj
Definition pobj.c:49
Definition types.h:30
Definition aobj.h:50
Definition aobj.h:40
Definition fog.h:32
u16 width
Definition fog.h:34
Mtx44 mtx
Definition fog.h:35
u16 center
Definition fog.h:33
Definition fog.h:42
HSD_ObjInfo parent
Definition fog.h:43
Definition fog.h:14
u16 width
Definition fog.h:17
HSD_AObj * aobj
Definition fog.h:19
Mtx44 mtx
Definition fog.h:18
s16 center
Definition fog.h:16
HSD_Obj parent
Definition fog.h:15
Definition fog.h:46
f32 start
Definition fog.h:49
GXColor color
Definition fog.h:51
f32 end
Definition fog.h:50
u32 type
Definition fog.h:47
HSD_FogAdjDesc * fogadjdesc
Definition fog.h:48
Definition fog.h:38
HSD_ObjInfo parent
Definition fog.h:39
Definition fog.h:22
f32 end
Definition fog.h:27
HSD_AObj * aobj
Definition fog.h:29
HSD_FogAdj * fog_adj
Definition fog.h:25
GXColor color
Definition fog.h:28
HSD_Obj parent
Definition fog.h:23
u32 type
Definition fog.h:24
f32 start
Definition fog.h:26
Definition object.h:66
Definition object.h:60
Definition fobj.h:65