SSBM Decomp
Loading...
Searching...
No Matches
psstructs.h File Reference
#include <platform.h>
#include "baselib/archive.h"
#include "baselib/forward.h"
#include "baselib/jobj.h"
#include <dolphin/gx.h>
#include <dolphin/gx/GXEnum.h>
#include <dolphin/mtx.h>

Go to the source code of this file.

Data Structures

struct  HSD_PSTexGroup
struct  HSD_PSFormGroup
struct  HSD_PSCmdList
struct  HSD_psAppSRT
struct  HSD_Particle
struct  HSD_PSUserFunc
struct  auxDisc
struct  auxLine
struct  auxTornado
struct  auxRect
struct  auxCone
struct  auxSphere
struct  HSD_Generator

Macros

#define PS_TEXDIRECTION

Enumerations

enum  HSD_ParticleKind {
  Tornado = 1 << 2 ,
  TexEdge = 1 << 3 ,
  ComTLUT = 1 << 4 ,
  MirrorS = 1 << 5 ,
  MirrorT = 1 << 6 ,
  PrimEnv = 1 << 7 ,
  TexInterpNear = 1 << 9 ,
  DispTexture = 1 << 10 ,
  TexFlipS = 1 << 18 ,
  TexFlipT = 1 << 19 ,
  Trail = 1 << 20 ,
  DirVec = 1 << 21 ,
  DispFog = 1 << 24 ,
  NoZComp = 1 << 28 ,
  DispPoint = 1 << 30 ,
  DispLighting = 1 << 31
}

Functions

void psSetFog (struct HSD_Fog *fog)
void psRemoveFog (void)
static void setBlendMode (int blendmode)
static void setupChanCtrl (HSD_Particle *pp)
static void setupChanReg (HSD_Particle *pp)
static void getClrTrail (HSD_Particle *pp, GXColor *col)
static void setupTevReg (HSD_Particle *pp)
static void psSetCurrentMtx (GXPosNrmMtx idx)
static HSD_ParticlepsDispSubPoint (HSD_Particle *pp)
static HSD_ParticlepsDispSubPointTrail (HSD_Particle *pp)
static void psDispSubMakePolygon (HSD_Particle *pp, u8 *texform, float x, float y, float z, float ppvx, float ppvy, float ppvz, float x0, float y0, float z0, float x1, float y1, float z1)
static void psDispSub (HSD_Particle *pp, u8 *texform)
void psInitDataBank (int bank, int *cmdBank, int *texBank, u32 *ref, int *formBank)
void psInitParticle (int num)
void psRemoveParticle (void)
HSD_ParticlepsGenerateParticle0 (HSD_Particle *p, int linkNo, int bank, u32 kind, u16 texGroup, u8 *list, int life, float x, float y, float z, float vx, float vy, float vz, float size, float grav, float fric, int palflag, HSD_Generator *gp, int flgInterpret)
HSD_ParticlepsGenerateParticleID0 (HSD_Particle *p, int linkNo, int bank, int id, int flgInterpret)
HSD_ParticlepsGenerateParticle (int linkNo, int bank, u32 kind, u16 texGroup, u8 *list, int life, float x, float y, float z, float vx, float vy, float vz, float size, float grav, float fric, int palflag, HSD_Generator *gp)
HSD_ParticlepsGenerateParticleIDPV (int linkNo, int bank, int id, float px, float py, float pz, float vx, float vy, float vz)
HSD_ParticlepsGenerateParticleID (int linkNo, int bank, int id)
HSD_ParticlepsGenerateParticleIDN (int linkNo, int bank, int id)
void psKillParticle (HSD_Particle *pp)
void psKillAllParticle (void)
void psSetPointJObj (int no, HSD_JObj *jobj)
void psSetPointJObjNodup (HSD_JObj *jobj, int no)
void psClearPointJObj (void)
void psDeletePntJObjwithParticle (HSD_Particle *pp)
void psKillFamily (u16 idnum, int linkNo)
void psKillGeneratorChild (HSD_Generator *gp)
void psAddOffsetAll (float xofs, float yofs, float zofs)
void psPauseFamily (u16 idnum, int linkNo)
void psRestartFamily (u16 idnum, int linkNo)
void psSetCallback (int(**callback)(HSD_Particle *part))
void psSetUserFunc (HSD_Generator *gp, HSD_PSUserFunc *userfunc)
static void psRemoveBillboardCamera (void)

Variables

int texc [4][4]
int td

Macro Definition Documentation

◆ PS_TEXDIRECTION

#define PS_TEXDIRECTION

Enumeration Type Documentation

◆ HSD_ParticleKind

Enumerator
Tornado 
TexEdge 
ComTLUT 
MirrorS 
MirrorT 
PrimEnv 
TexInterpNear 
DispTexture 
TexFlipS 
TexFlipT 
Trail 
DirVec 
DispFog 
NoZComp 
DispPoint 
DispLighting 

Function Documentation

◆ psSetFog()

void psSetFog ( struct HSD_Fog * fog)

◆ psRemoveFog()

void psRemoveFog ( void )

◆ setBlendMode()

void setBlendMode ( int blendmode)
inlinestatic

◆ setupChanCtrl()

void setupChanCtrl ( HSD_Particle * pp)
inlinestatic

◆ setupChanReg()

void setupChanReg ( HSD_Particle * pp)
inlinestatic

◆ getClrTrail()

void getClrTrail ( HSD_Particle * pp,
GXColor * col )
inlinestatic

◆ setupTevReg()

void setupTevReg ( HSD_Particle * pp)
inlinestatic

◆ psSetCurrentMtx()

void psSetCurrentMtx ( GXPosNrmMtx idx)
inlinestatic

◆ psDispSubPoint()

HSD_Particle * psDispSubPoint ( HSD_Particle * pp)
inlinestatic

◆ psDispSubPointTrail()

HSD_Particle * psDispSubPointTrail ( HSD_Particle * pp)
inlinestatic

◆ psDispSubMakePolygon()

void psDispSubMakePolygon ( HSD_Particle * pp,
u8 * texform,
float x,
float y,
float z,
float ppvx,
float ppvy,
float ppvz,
float x0,
float y0,
float z0,
float x1,
float y1,
float z1 )
inlinestatic

◆ psDispSub()

void psDispSub ( HSD_Particle * pp,
u8 * texform )
inlinestatic

◆ psInitDataBank()

void psInitDataBank ( int bank,
int * cmdBank,
int * texBank,
u32 * ref,
int * formBank )

◆ psInitParticle()

void psInitParticle ( int num)

◆ psRemoveParticle()

void psRemoveParticle ( void )

◆ psGenerateParticle0()

HSD_Particle * psGenerateParticle0 ( HSD_Particle * p,
int linkNo,
int bank,
u32 kind,
u16 texGroup,
u8 * list,
int life,
float x,
float y,
float z,
float vx,
float vy,
float vz,
float size,
float grav,
float fric,
int palflag,
HSD_Generator * gp,
int flgInterpret )

◆ psGenerateParticleID0()

HSD_Particle * psGenerateParticleID0 ( HSD_Particle * p,
int linkNo,
int bank,
int id,
int flgInterpret )

◆ psGenerateParticle()

HSD_Particle * psGenerateParticle ( int linkNo,
int bank,
u32 kind,
u16 texGroup,
u8 * list,
int life,
float x,
float y,
float z,
float vx,
float vy,
float vz,
float size,
float grav,
float fric,
int palflag,
HSD_Generator * gp )

◆ psGenerateParticleIDPV()

HSD_Particle * psGenerateParticleIDPV ( int linkNo,
int bank,
int id,
float px,
float py,
float pz,
float vx,
float vy,
float vz )

◆ psGenerateParticleID()

HSD_Particle * psGenerateParticleID ( int linkNo,
int bank,
int id )

◆ psGenerateParticleIDN()

HSD_Particle * psGenerateParticleIDN ( int linkNo,
int bank,
int id )

◆ psKillParticle()

void psKillParticle ( HSD_Particle * pp)

◆ psKillAllParticle()

void psKillAllParticle ( void )

◆ psSetPointJObj()

void psSetPointJObj ( int no,
HSD_JObj * jobj )

◆ psSetPointJObjNodup()

void psSetPointJObjNodup ( HSD_JObj * jobj,
int no )

◆ psClearPointJObj()

void psClearPointJObj ( void )

◆ psDeletePntJObjwithParticle()

void psDeletePntJObjwithParticle ( HSD_Particle * pp)

◆ psKillFamily()

void psKillFamily ( u16 idnum,
int linkNo )

◆ psKillGeneratorChild()

void psKillGeneratorChild ( HSD_Generator * gp)

◆ psAddOffsetAll()

void psAddOffsetAll ( float xofs,
float yofs,
float zofs )

◆ psPauseFamily()

void psPauseFamily ( u16 idnum,
int linkNo )

◆ psRestartFamily()

void psRestartFamily ( u16 idnum,
int linkNo )

◆ psSetCallback()

void psSetCallback ( int(** callback )(HSD_Particle *part))

◆ psSetUserFunc()

void psSetUserFunc ( HSD_Generator * gp,
HSD_PSUserFunc * userfunc )

◆ psRemoveBillboardCamera()

void psRemoveBillboardCamera ( void )
inlinestatic

Variable Documentation

◆ texc

int texc[4][4]
extern

◆ td

int td
extern