SSBM Decomp
Loading...
Searching...
No Matches
forward.h File Reference
#include <platform.h>

Go to the source code of this file.

Macros

#define HSD_A_S_W0   2
 
#define HSD_DEFAULT_MAX_SHAPE_VERTICES   2000
 
#define HSD_DEFAULT_MAX_SHAPE_NORMALS   2000
 
#define POBJ_ANIM   (1 << 3)
 
#define POBJ_SKIN   (0 << 12)
 
#define POBJ_SHAPEANIM   (1 << 12)
 
#define POBJ_ENVELOPE   (2 << 12)
 
#define pobj_type(o)   (o->flags & 0x3000)
 
#define POBJ_CULLFRONT   (1 << 14)
 
#define POBJ_CULLBACK   (1 << 15)
 
#define SHAPESET_AVERAGE   1
 
#define SHAPESET_ADDITIVE   1 << 1
 
#define HSD_A_L_LITC_R   9
 
#define HSD_A_L_LITC_G   10
 
#define HSD_A_L_LITC_B   11
 
#define HSD_A_L_VIS   12
 
#define HSD_A_L_A0   13
 
#define HSD_A_L_A1   14
 
#define HSD_A_L_A2   15
 
#define HSD_A_L_K0   16
 
#define HSD_A_L_K1   17
 
#define HSD_A_L_K2   18
 
#define HSD_A_L_CUTOFF   19
 
#define HSD_A_L_REFDIST   20
 
#define HSD_A_L_REFBRIGHT   21
 
#define HSD_A_L_LITC_A   22
 
#define LOBJ_AMBIENT   (0 << 0)
 
#define LOBJ_INFINITE   (1 << 0)
 
#define LOBJ_POINT   (2 << 0)
 
#define LOBJ_SPOT   (3 << 0)
 
#define LOBJ_DIFFUSE   (1 << 2)
 
#define LOBJ_SPECULAR   (1 << 3)
 
#define LOBJ_ALPHA   (1 << 4)
 
#define LOBJ_HIDDEN   (1 << 5)
 
#define LOBJ_RAW_PARAM   (1 << 6)
 
#define LOBJ_DIFF_DIRTY   (1 << 7)
 
#define LOBJ_SPEC_DIRTY   (1 << 8)
 
#define LOBJ_TYPE_MASK   3
 
#define LOBJ_LIGHT_ATTN_NONE   0
 
#define LOBJ_LIGHT_ATTN   1
 

Typedefs

typedef void(* GObj_RenderFunc) (HSD_GObj *gobj, int code)
 
typedef void(* HSD_ObjUpdateFunc) (void *obj, enum_t type, HSD_ObjData *fval)
 
typedef void(* HSD_DevComCallback) (void *, int, void *, bool cancelflag)
 
typedef void(* HSD_GObjEvent) (HSD_GObj *gobj)
 
typedef void(* HSD_UserDataEvent) (void *user_data)
 
typedef bool(* HSD_GObjPredicate) (HSD_GObj *gobj)
 
typedef void(* HSD_GObjInteraction) (HSD_GObj *gobj0, HSD_GObj *gobj1)
 
typedef void(* HSD_MObjSetupFunc) (HSD_MObj *mobj, u32 rendermode)
 

Enumerations

enum  PObjSetupFlag {
  SETUP_NORMAL = 1 ,
  SETUP_REFLECTION = 2 ,
  SETUP_HIGHLIGHT = 4 ,
  SETUP_NORMAL_PROJECTION = 6 ,
  SETUP_JOINT0 = 1 ,
  SETUP_JOINT1 = 2 ,
  SETUP_NONE = 0
}
 
enum  HSD_TrspMask {
  HSD_TRSP_OPA = 1 ,
  HSD_TRSP_XLU = 2 ,
  HSD_TRSP_TEXEDGE = 4 ,
  HSD_TRSP_ALL = 7
}
 

Macro Definition Documentation

◆ HSD_A_S_W0

#define HSD_A_S_W0   2

◆ HSD_DEFAULT_MAX_SHAPE_VERTICES

#define HSD_DEFAULT_MAX_SHAPE_VERTICES   2000

◆ HSD_DEFAULT_MAX_SHAPE_NORMALS

#define HSD_DEFAULT_MAX_SHAPE_NORMALS   2000

◆ POBJ_ANIM

#define POBJ_ANIM   (1 << 3)

◆ POBJ_SKIN

#define POBJ_SKIN   (0 << 12)

◆ POBJ_SHAPEANIM

#define POBJ_SHAPEANIM   (1 << 12)

◆ POBJ_ENVELOPE

#define POBJ_ENVELOPE   (2 << 12)

◆ pobj_type

#define pobj_type (   o)    (o->flags & 0x3000)

◆ POBJ_CULLFRONT

#define POBJ_CULLFRONT   (1 << 14)

◆ POBJ_CULLBACK

#define POBJ_CULLBACK   (1 << 15)

◆ SHAPESET_AVERAGE

#define SHAPESET_AVERAGE   1

◆ SHAPESET_ADDITIVE

#define SHAPESET_ADDITIVE   1 << 1

◆ HSD_A_L_LITC_R

#define HSD_A_L_LITC_R   9

◆ HSD_A_L_LITC_G

#define HSD_A_L_LITC_G   10

◆ HSD_A_L_LITC_B

#define HSD_A_L_LITC_B   11

◆ HSD_A_L_VIS

#define HSD_A_L_VIS   12

◆ HSD_A_L_A0

#define HSD_A_L_A0   13

◆ HSD_A_L_A1

#define HSD_A_L_A1   14

◆ HSD_A_L_A2

#define HSD_A_L_A2   15

◆ HSD_A_L_K0

#define HSD_A_L_K0   16

◆ HSD_A_L_K1

#define HSD_A_L_K1   17

◆ HSD_A_L_K2

#define HSD_A_L_K2   18

◆ HSD_A_L_CUTOFF

#define HSD_A_L_CUTOFF   19

◆ HSD_A_L_REFDIST

#define HSD_A_L_REFDIST   20

◆ HSD_A_L_REFBRIGHT

#define HSD_A_L_REFBRIGHT   21

◆ HSD_A_L_LITC_A

#define HSD_A_L_LITC_A   22

◆ LOBJ_AMBIENT

#define LOBJ_AMBIENT   (0 << 0)

◆ LOBJ_INFINITE

#define LOBJ_INFINITE   (1 << 0)

◆ LOBJ_POINT

#define LOBJ_POINT   (2 << 0)

◆ LOBJ_SPOT

#define LOBJ_SPOT   (3 << 0)

◆ LOBJ_DIFFUSE

#define LOBJ_DIFFUSE   (1 << 2)

◆ LOBJ_SPECULAR

#define LOBJ_SPECULAR   (1 << 3)

◆ LOBJ_ALPHA

#define LOBJ_ALPHA   (1 << 4)

◆ LOBJ_HIDDEN

#define LOBJ_HIDDEN   (1 << 5)

◆ LOBJ_RAW_PARAM

#define LOBJ_RAW_PARAM   (1 << 6)

◆ LOBJ_DIFF_DIRTY

#define LOBJ_DIFF_DIRTY   (1 << 7)

◆ LOBJ_SPEC_DIRTY

#define LOBJ_SPEC_DIRTY   (1 << 8)

◆ LOBJ_TYPE_MASK

#define LOBJ_TYPE_MASK   3

◆ LOBJ_LIGHT_ATTN_NONE

#define LOBJ_LIGHT_ATTN_NONE   0

◆ LOBJ_LIGHT_ATTN

#define LOBJ_LIGHT_ATTN   1

Typedef Documentation

◆ GObj_RenderFunc

typedef void(* GObj_RenderFunc) (HSD_GObj *gobj, int code)

◆ HSD_ObjUpdateFunc

typedef void(* HSD_ObjUpdateFunc) (void *obj, enum_t type, HSD_ObjData *fval)

◆ HSD_DevComCallback

typedef void(* HSD_DevComCallback) (void *, int, void *, bool cancelflag)

◆ HSD_GObjEvent

typedef void(* HSD_GObjEvent) (HSD_GObj *gobj)

◆ HSD_UserDataEvent

typedef void(* HSD_UserDataEvent) (void *user_data)

◆ HSD_GObjPredicate

typedef bool(* HSD_GObjPredicate) (HSD_GObj *gobj)

◆ HSD_GObjInteraction

typedef void(* HSD_GObjInteraction) (HSD_GObj *gobj0, HSD_GObj *gobj1)

◆ HSD_MObjSetupFunc

typedef void(* HSD_MObjSetupFunc) (HSD_MObj *mobj, u32 rendermode)

Enumeration Type Documentation

◆ PObjSetupFlag

Enumerator
SETUP_NORMAL 
SETUP_REFLECTION 
SETUP_HIGHLIGHT 
SETUP_NORMAL_PROJECTION 
SETUP_JOINT0 
SETUP_JOINT1 
SETUP_NONE 

◆ HSD_TrspMask

Enumerator
HSD_TRSP_OPA 
HSD_TRSP_XLU 
HSD_TRSP_TEXEDGE 
HSD_TRSP_ALL