SSBM Decomp
Loading...
Searching...
No Matches
shadow.h
Go to the documentation of this file.
1#ifndef _shadow_h_
2#define _shadow_h_
3
4#include <Runtime/platform.h>
5
7
8#include <dolphin/mtx.h>
13
14struct HSD_Shadow {
18 f32 scaleS; // 0xC
19 f32 scaleT; // 0x10
20 f32 transS; // 0x14
21 f32 transT; // 0x18
22 bool active; // 0x1C
23 u8 intensity; // 0x20
24 void* user_data; // 0x24
25};
26
40
44void HSD_ShadowAddObject(HSD_Shadow* shadow, HSD_JObj* jobj);
45void HSD_ShadowDeleteObject(HSD_Shadow* shadow, HSD_JObj* jobj);
46
49void HSD_ShadowSetActive(HSD_Shadow* shadow, int active);
50
52void HSD_ShadowRemove(HSD_Shadow* shadow);
53void HSD_ShadowInit(HSD_Shadow* shadow);
54void HSD_ShadowSetSize(HSD_Shadow* shadow, u16 width, u16 height);
55
56void HSD_ShadowSetViewingRect(HSD_Shadow* shadow, float top, float bottom,
57 float left, float right);
59 Vec3* upvector, int perspective);
61void HSD_ViewingRectAddRect(HSD_ViewingRect* rect, Vec3* position, float top,
62 float bottom, float left, float right);
63
64#endif
struct Vec Vec3
float f32
Definition types.h:13
unsigned short int u16
Definition types.h:7
unsigned char u8
Definition types.h:5
static HSD_WObjDesc interest
Definition if_2FF2.c:25
void HSD_ShadowSetSize(HSD_Shadow *shadow, u16 width, u16 height)
Definition shadow.c:111
void HSD_ShadowSetActive(HSD_Shadow *shadow, int active)
Definition shadow.c:280
int HSD_ViewingRectCheck(HSD_ViewingRect *rect)
Definition shadow.c:451
HSD_Shadow * HSD_ShadowAlloc(void)
Definition shadow.c:50
void HSD_ShadowRemove(HSD_Shadow *shadow)
Definition shadow.c:75
void HSD_ViewingRectInit(HSD_ViewingRect *rect, Vec3 *position, Vec3 *interest, Vec3 *upvector, int perspective)
Definition shadow.c:432
void HSD_ShadowAddObject(HSD_Shadow *shadow, HSD_JObj *jobj)
Definition shadow.c:305
void HSD_ShadowInit(HSD_Shadow *shadow)
Definition shadow.c:101
void HSD_ShadowInitAllocData(void)
Definition shadow.c:33
HSD_ObjAllocData * HSD_ShadowGetAllocData(void)
Definition shadow.c:28
void HSD_ShadowDeleteObject(HSD_Shadow *shadow, HSD_JObj *jobj)
Definition shadow.c:322
void HSD_ShadowEndRender(HSD_Shadow *shadow)
Definition shadow.c:261
void HSD_ShadowSetViewingRect(HSD_Shadow *shadow, float top, float bottom, float left, float right)
Definition shadow.c:386
HSD_TObj * makeShadowTObj(void)
Definition shadow.c:38
void HSD_ShadowStartRender(HSD_Shadow *shadow)
Definition shadow.c:173
void HSD_ViewingRectAddRect(HSD_ViewingRect *rect, Vec3 *position, float top, float bottom, float left, float right)
Definition shadow.c:457
Definition cobj.h:37
Definition jobj.h:104
Definition objalloc.h:19
Definition list.h:6
Definition shadow.h:14
HSD_TObj * texture
Definition shadow.h:17
HSD_CObj * camera
Definition shadow.h:16
f32 scaleS
Definition shadow.h:18
f32 transT
Definition shadow.h:21
HSD_SList * objects
Definition shadow.h:15
bool active
Definition shadow.h:22
f32 scaleT
Definition shadow.h:19
void * user_data
Definition shadow.h:24
f32 transS
Definition shadow.h:20
u8 intensity
Definition shadow.h:23
Texture Object.
Definition tobj.h:132
Definition shadow.h:27
f32 top
Definition shadow.h:34
f32 distance
Definition shadow.h:33
Vec3 origin
Definition shadow.h:28
Vec3 up_v
Definition shadow.h:29
int perspective
Definition shadow.h:38
Vec3 eye_vn
Definition shadow.h:32
Vec3 right_v
Definition shadow.h:30
Vec3 eye_v
Definition shadow.h:31
f32 left
Definition shadow.h:36
f32 right
Definition shadow.h:37
f32 bottom
Definition shadow.h:35