SSBM Decomp
Toggle main menu visibility
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
6
#include <
sysdolphin/baselib/forward.h
>
7
8
#include <
dolphin/mtx.h
>
9
#include <
sysdolphin/baselib/cobj.h
>
10
#include <
sysdolphin/baselib/list.h
>
11
#include <
sysdolphin/baselib/objalloc.h
>
12
#include <
sysdolphin/baselib/tobj.h
>
13
14
struct
HSD_Shadow
{
15
HSD_SList
*
objects
;
// 0x0
16
HSD_CObj
*
camera
;
// 0x4
17
HSD_TObj
*
texture
;
// 0x8
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
27
struct
HSD_ViewingRect
{
28
Vec3
origin
;
29
Vec3
up_v
;
30
Vec3
right_v
;
31
Vec3
eye_v
;
32
Vec3
eye_vn
;
33
f32
distance
;
34
f32
top
;
35
f32
bottom
;
36
f32
left
;
37
f32
right
;
38
int
perspective
;
39
};
40
41
HSD_ObjAllocData
*
HSD_ShadowGetAllocData
(
void
);
42
void
HSD_ShadowInitAllocData
(
void
);
43
HSD_Shadow
*
HSD_ShadowAlloc
(
void
);
44
void
HSD_ShadowAddObject
(
HSD_Shadow
* shadow,
HSD_JObj
* jobj);
45
void
HSD_ShadowDeleteObject
(
HSD_Shadow
* shadow,
HSD_JObj
* jobj);
46
47
void
HSD_ShadowStartRender
(
HSD_Shadow
* shadow);
48
void
HSD_ShadowEndRender
(
HSD_Shadow
* shadow);
49
void
HSD_ShadowSetActive
(
HSD_Shadow
* shadow,
int
active);
50
51
HSD_TObj
*
makeShadowTObj
(
void
);
52
void
HSD_ShadowRemove
(
HSD_Shadow
* shadow);
53
void
HSD_ShadowInit
(
HSD_Shadow
* shadow);
54
void
HSD_ShadowSetSize
(
HSD_Shadow
* shadow,
u16
width,
u16
height);
55
56
void
HSD_ShadowSetViewingRect
(
HSD_Shadow
* shadow,
float
top,
float
bottom,
57
float
left,
float
right);
58
void
HSD_ViewingRectInit
(
HSD_ViewingRect
* rect,
Vec3
* position,
Vec3
*
interest
,
59
Vec3
* upvector,
int
perspective);
60
int
HSD_ViewingRectCheck
(
HSD_ViewingRect
* rect);
61
void
HSD_ViewingRectAddRect
(
HSD_ViewingRect
* rect,
Vec3
* position,
float
top,
62
float
bottom,
float
left,
float
right);
63
64
#endif
cobj.h
mtx.h
Vec3
struct Vec Vec3
f32
float f32
Definition
types.h:13
u16
unsigned short int u16
Definition
types.h:7
u8
unsigned char u8
Definition
types.h:5
interest
static HSD_WObjDesc interest
Definition
if_2FF2.c:25
list.h
objalloc.h
platform.h
HSD_ShadowSetSize
void HSD_ShadowSetSize(HSD_Shadow *shadow, u16 width, u16 height)
Definition
shadow.c:111
HSD_ShadowSetActive
void HSD_ShadowSetActive(HSD_Shadow *shadow, int active)
Definition
shadow.c:280
HSD_ViewingRectCheck
int HSD_ViewingRectCheck(HSD_ViewingRect *rect)
Definition
shadow.c:451
HSD_ShadowAlloc
HSD_Shadow * HSD_ShadowAlloc(void)
Definition
shadow.c:50
HSD_ShadowRemove
void HSD_ShadowRemove(HSD_Shadow *shadow)
Definition
shadow.c:75
HSD_ViewingRectInit
void HSD_ViewingRectInit(HSD_ViewingRect *rect, Vec3 *position, Vec3 *interest, Vec3 *upvector, int perspective)
Definition
shadow.c:432
HSD_ShadowAddObject
void HSD_ShadowAddObject(HSD_Shadow *shadow, HSD_JObj *jobj)
Definition
shadow.c:305
HSD_ShadowInit
void HSD_ShadowInit(HSD_Shadow *shadow)
Definition
shadow.c:101
HSD_ShadowInitAllocData
void HSD_ShadowInitAllocData(void)
Definition
shadow.c:33
HSD_ShadowGetAllocData
HSD_ObjAllocData * HSD_ShadowGetAllocData(void)
Definition
shadow.c:28
HSD_ShadowDeleteObject
void HSD_ShadowDeleteObject(HSD_Shadow *shadow, HSD_JObj *jobj)
Definition
shadow.c:322
HSD_ShadowEndRender
void HSD_ShadowEndRender(HSD_Shadow *shadow)
Definition
shadow.c:261
HSD_ShadowSetViewingRect
void HSD_ShadowSetViewingRect(HSD_Shadow *shadow, float top, float bottom, float left, float right)
Definition
shadow.c:386
makeShadowTObj
HSD_TObj * makeShadowTObj(void)
Definition
shadow.c:38
HSD_ShadowStartRender
void HSD_ShadowStartRender(HSD_Shadow *shadow)
Definition
shadow.c:173
HSD_ViewingRectAddRect
void HSD_ViewingRectAddRect(HSD_ViewingRect *rect, Vec3 *position, float top, float bottom, float left, float right)
Definition
shadow.c:457
HSD_CObj
Definition
cobj.h:37
HSD_JObj
Definition
jobj.h:104
HSD_ObjAllocData
Definition
objalloc.h:19
HSD_SList
Definition
list.h:6
HSD_Shadow
Definition
shadow.h:14
HSD_Shadow::texture
HSD_TObj * texture
Definition
shadow.h:17
HSD_Shadow::camera
HSD_CObj * camera
Definition
shadow.h:16
HSD_Shadow::scaleS
f32 scaleS
Definition
shadow.h:18
HSD_Shadow::transT
f32 transT
Definition
shadow.h:21
HSD_Shadow::objects
HSD_SList * objects
Definition
shadow.h:15
HSD_Shadow::active
bool active
Definition
shadow.h:22
HSD_Shadow::scaleT
f32 scaleT
Definition
shadow.h:19
HSD_Shadow::user_data
void * user_data
Definition
shadow.h:24
HSD_Shadow::transS
f32 transS
Definition
shadow.h:20
HSD_Shadow::intensity
u8 intensity
Definition
shadow.h:23
HSD_TObj
Texture Object.
Definition
tobj.h:132
HSD_ViewingRect
Definition
shadow.h:27
HSD_ViewingRect::top
f32 top
Definition
shadow.h:34
HSD_ViewingRect::distance
f32 distance
Definition
shadow.h:33
HSD_ViewingRect::origin
Vec3 origin
Definition
shadow.h:28
HSD_ViewingRect::up_v
Vec3 up_v
Definition
shadow.h:29
HSD_ViewingRect::perspective
int perspective
Definition
shadow.h:38
HSD_ViewingRect::eye_vn
Vec3 eye_vn
Definition
shadow.h:32
HSD_ViewingRect::right_v
Vec3 right_v
Definition
shadow.h:30
HSD_ViewingRect::eye_v
Vec3 eye_v
Definition
shadow.h:31
HSD_ViewingRect::left
f32 left
Definition
shadow.h:36
HSD_ViewingRect::right
f32 right
Definition
shadow.h:37
HSD_ViewingRect::bottom
f32 bottom
Definition
shadow.h:35
forward.h
tobj.h
src
sysdolphin
baselib
shadow.h
Generated by
1.17.0