openTRI 0.1
Particle system

Data Structures

struct  triParticle
struct  triVortex
struct  triParticleEmitter
struct  triBlendMode
struct  triParticleSystem
struct  triParticleManager

Macros

#define TRI_VORTEX_RANGE   (3.0f)

Typedefs

typedef struct triParticle triParticle
typedef struct triVortex triVortex
typedef struct triParticleEmitter triParticleEmitter
typedef struct triBlendMode triBlendMode
typedef struct triParticleSystem triParticleSystem
typedef void(* triParticleRenderer) (triParticleSystem *s, triParticle *p)
 Custom particle render callback.
typedef struct triParticleManager triParticleManager

Enumerations

enum  triParticleEmitterTypes {
  TRI_EMITTER_MANUAL = 0 , TRI_EMITTER_FIRE , TRI_EMITTER_EXPLOSION , TRI_EMITTER_SPRINKLE ,
  TRI_EMITTER_WATERFALL , TRI_EMITTER_SMOKE , TRI_EMITTER_NUM_TYPES
}
enum  triParticleActions {
  triApplyForce , triInternalGravity , triInternalCollide , triEmitterBound ,
  triCollide , triDie , triNumActions
}

Functions

void triParticleSystemConstructor (triParticleSystem *s)
void triParticleSystemFree (triParticleSystem *s)
triS32 triParticleSystemRender (triParticleSystem *s)
void triParticleSystemInitialize (triParticleSystem *s, triParticleEmitter *e)
void triParticleSystemUpdate (triParticleSystem *s, triCamera *cam, triFloat dt)
triS32 triParticleVertexUVCListCreate (triParticleSystem *s, triCamera *cam)
triS32 triParticleVertexCListCreate (triParticleSystem *s, triCamera *cam)
void triParticleEmitterConstructor (triParticleEmitter *e, triS32 emitterType)
void triParticleManagerUpdate (triCamera *cam, triFloat dt)
void triParticleManagerRender ()
void triParticleManagerUpdateRender (triCamera *cam, triFloat dt)
void triParticleManagerRemove (triS32 id)
triParticleSystemtriParticleManagerGet (triS32 id)
void triParticleManagerDestroy ()
triS32 triParticleManagerAdd (triParticleSystem *p, triParticleEmitter *e)
triS32 triParticleManagerLoadScript (triChar *name)

Variables

triBlendMode TRI_BLEND_MODE_ALPHA
triBlendMode TRI_BLEND_MODE_ADD
triBlendMode TRI_BLEND_MODE_GLENZ
triBlendMode TRI_BLEND_MODE_ALPHA_ADD
triBlendMode TRI_BLEND_MODE_SUB
triBlendMode TRI_BLEND_MODE_ALPHA_SUB

Detailed Description

Typedef Documentation

◆ triParticleRenderer

typedef void(* triParticleRenderer) (triParticleSystem *s, triParticle *p)

Custom particle render callback.

Parameters
sPointer to particle system
pPointer to particle structure to render