SSBM Decomp
Loading...
Searching...
No Matches
GXLight.c File Reference
#include <macros.h>
#include <math.h>
#include "__gx.h"
#include <dolphin/gx.h>
#include <dolphin/os.h>

Data Structures

struct  __GXLightObjInt_struct

Macros

#define WRITE_SOME_LIGHT_REG1(val, addr)
#define WRITE_SOME_LIGHT_REG2(val, addr)

Functions

void GXInitLightAttn (GXLightObj *lt_obj, f32 a0, f32 a1, f32 a2, f32 k0, f32 k1, f32 k2)
void GXInitLightAttnA (GXLightObj *lt_obj, f32 a0, f32 a1, f32 a2)
void GXGetLightAttnA (GXLightObj *lt_obj, f32 *a0, f32 *a1, f32 *a2)
void GXInitLightAttnK (GXLightObj *lt_obj, f32 k0, f32 k1, f32 k2)
void GXGetLightAttnK (GXLightObj *lt_obj, f32 *k0, f32 *k1, f32 *k2)
void GXInitLightSpot (GXLightObj *lt_obj, f32 cutoff, GXSpotFn spot_func)
void GXInitLightDistAttn (GXLightObj *lt_obj, f32 ref_dist, f32 ref_br, GXDistAttnFn dist_func)
void GXInitLightPos (GXLightObj *lt_obj, f32 x, f32 y, f32 z)
void GXGetLightPos (GXLightObj *lt_obj, f32 *x, f32 *y, f32 *z)
void GXInitLightDir (GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz)
void GXGetLightDir (GXLightObj *lt_obj, f32 *nx, f32 *ny, f32 *nz)
void GXInitSpecularDir (GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz)
void GXInitSpecularDirHA (GXLightObj *lt_obj, f32 nx, f32 ny, f32 nz, f32 hx, f32 hy, f32 hz)
void GXInitLightColor (GXLightObj *lt_obj, GXColor color)
void GXGetLightColor (GXLightObj *lt_obj, GXColor *color)
void GXLoadLightObjImm (GXLightObj *lt_obj, GXLightID light)
void GXLoadLightObjIndx (u32 lt_obj_indx, GXLightID light)
void GXSetChanAmbColor (GXChannelID chan, GXColor amb_color)
void GXSetChanMatColor (GXChannelID chan, GXColor mat_color)
void GXSetNumChans (u8 nChans)
void GXSetChanCtrl (GXChannelID chan, GXBool enable, GXColorSrc amb_src, GXColorSrc mat_src, u32 light_mask, GXDiffuseFn diff_fn, GXAttnFn attn_fn)

Macro Definition Documentation

◆ WRITE_SOME_LIGHT_REG1

#define WRITE_SOME_LIGHT_REG1 ( val,
addr )
Value:
#define GX_WRITE_U32(ui)
Definition __gx.h:12

◆ WRITE_SOME_LIGHT_REG2

#define WRITE_SOME_LIGHT_REG2 ( val,
addr )
Value:
#define GX_WRITE_F32(f)
Definition __gx.h:14

Function Documentation

◆ GXInitLightAttn()

void GXInitLightAttn ( GXLightObj * lt_obj,
f32 a0,
f32 a1,
f32 a2,
f32 k0,
f32 k1,
f32 k2 )

◆ GXInitLightAttnA()

void GXInitLightAttnA ( GXLightObj * lt_obj,
f32 a0,
f32 a1,
f32 a2 )

◆ GXGetLightAttnA()

void GXGetLightAttnA ( GXLightObj * lt_obj,
f32 * a0,
f32 * a1,
f32 * a2 )

◆ GXInitLightAttnK()

void GXInitLightAttnK ( GXLightObj * lt_obj,
f32 k0,
f32 k1,
f32 k2 )

◆ GXGetLightAttnK()

void GXGetLightAttnK ( GXLightObj * lt_obj,
f32 * k0,
f32 * k1,
f32 * k2 )

◆ GXInitLightSpot()

void GXInitLightSpot ( GXLightObj * lt_obj,
f32 cutoff,
GXSpotFn spot_func )

◆ GXInitLightDistAttn()

void GXInitLightDistAttn ( GXLightObj * lt_obj,
f32 ref_dist,
f32 ref_br,
GXDistAttnFn dist_func )

◆ GXInitLightPos()

void GXInitLightPos ( GXLightObj * lt_obj,
f32 x,
f32 y,
f32 z )

◆ GXGetLightPos()

void GXGetLightPos ( GXLightObj * lt_obj,
f32 * x,
f32 * y,
f32 * z )

◆ GXInitLightDir()

void GXInitLightDir ( GXLightObj * lt_obj,
f32 nx,
f32 ny,
f32 nz )

◆ GXGetLightDir()

void GXGetLightDir ( GXLightObj * lt_obj,
f32 * nx,
f32 * ny,
f32 * nz )

◆ GXInitSpecularDir()

void GXInitSpecularDir ( GXLightObj * lt_obj,
f32 nx,
f32 ny,
f32 nz )

◆ GXInitSpecularDirHA()

void GXInitSpecularDirHA ( GXLightObj * lt_obj,
f32 nx,
f32 ny,
f32 nz,
f32 hx,
f32 hy,
f32 hz )

◆ GXInitLightColor()

void GXInitLightColor ( GXLightObj * lt_obj,
GXColor color )

◆ GXGetLightColor()

void GXGetLightColor ( GXLightObj * lt_obj,
GXColor * color )

◆ GXLoadLightObjImm()

void GXLoadLightObjImm ( GXLightObj * lt_obj,
GXLightID light )

◆ GXLoadLightObjIndx()

void GXLoadLightObjIndx ( u32 lt_obj_indx,
GXLightID light )

◆ GXSetChanAmbColor()

void GXSetChanAmbColor ( GXChannelID chan,
GXColor amb_color )

◆ GXSetChanMatColor()

void GXSetChanMatColor ( GXChannelID chan,
GXColor mat_color )

◆ GXSetNumChans()

void GXSetNumChans ( u8 nChans)

◆ GXSetChanCtrl()

void GXSetChanCtrl ( GXChannelID chan,
GXBool enable,
GXColorSrc amb_src,
GXColorSrc mat_src,
u32 light_mask,
GXDiffuseFn diff_fn,
GXAttnFn attn_fn )