Nebula
Loading...
Searching...
No Matches
Particles::EmitterAttrs Class Reference

#include <emitterattrs.h>

Detailed Description

A container for particle emitter attributes.

Classes

struct  BoolAttributes
 
struct  IntAttributes
 

Public Types

enum  FloatAttr {
  EmissionDuration = 0 , ActivityDistance , StartRotationMin , StartRotationMax ,
  Gravity , ParticleStretch , VelocityRandomize , RotationRandomize ,
  SizeRandomize , PrecalcTime , StartDelay , TextureTile ,
  PhasesPerSecond , NumFloatAttrs
}
 scalar attributes More...
 
enum  BoolAttr {
  Looping = 0 , RandomizeRotation , StretchToStart , RenderOldestFirst ,
  ViewAngleFade , Billboard , NumBoolAttrs
}
 boolean attributes More...
 
enum  IntAttr { StretchDetail = 0 , AnimPhases , NumIntAttrs }
 integer attributes More...
 
enum  Float4Attr { WindDirection = 0 , NumFloat4Attrs }
 vec4 attributes More...
 
enum  EnvelopeAttr {
  Red = 0 , Green , Blue , Alpha ,
  EmissionFrequency , LifeTime , StartVelocity , RotationVelocity ,
  Size , SpreadMin , SpreadMax , AirResistance ,
  VelocityFactor , Mass , TimeManipulator , Alignment0 ,
  NumEnvelopeAttrs
}
 scalar envelope attributes More...
 

Public Member Functions

 EmitterAttrs ()
 constructor
 
void SetFloat (FloatAttr key, float value)
 set float attribute
 
float GetFloat (FloatAttr key) const
 get float attribute
 
void SetBool (BoolAttr key, bool value)
 set bool attribute
 
bool GetBool (BoolAttr key) const
 get bool attribute
 
void SetInt (IntAttr key, int value)
 set int attribute
 
int GetInt (IntAttr key) const
 get int attribute
 
void SetVec4 (Float4Attr key, const Math::vec4 &value)
 set vec4 attribute
 
const Math::vec4GetVec4 (Float4Attr key) const
 get vec4 attribute
 
void SetEnvelope (EnvelopeAttr key, const EnvelopeCurve &value)
 set envelope attribute
 
const EnvelopeCurveGetEnvelope (EnvelopeAttr key) const
 get envelope attribute
 

Private Attributes

Math::vec4 vec4Values [NumFloat4Attrs]
 
float floatValues [NumFloatAttrs]
 
EnvelopeCurve envelopeValues [NumEnvelopeAttrs]
 
struct Particles::EmitterAttrs::IntAttributes intAttributes
 
struct Particles::EmitterAttrs::BoolAttributes boolAttributes
 

Member Enumeration Documentation

◆ BoolAttr

boolean attributes

Enumerator
Looping 
RandomizeRotation 
StretchToStart 
RenderOldestFirst 
ViewAngleFade 
Billboard 
NumBoolAttrs 

◆ EnvelopeAttr

scalar envelope attributes

Enumerator
Red 
Green 
Blue 
Alpha 
EmissionFrequency 
LifeTime 
StartVelocity 
RotationVelocity 
Size 
SpreadMin 
SpreadMax 
AirResistance 
VelocityFactor 
Mass 
TimeManipulator 
Alignment0 
NumEnvelopeAttrs 

◆ Float4Attr

vec4 attributes

Enumerator
WindDirection 
NumFloat4Attrs 

◆ FloatAttr

scalar attributes

Enumerator
EmissionDuration 
ActivityDistance 
StartRotationMin 
StartRotationMax 
Gravity 
ParticleStretch 
VelocityRandomize 
RotationRandomize 
SizeRandomize 
PrecalcTime 
StartDelay 
TextureTile 
PhasesPerSecond 
NumFloatAttrs 

◆ IntAttr

integer attributes

Enumerator
StretchDetail 
AnimPhases 
NumIntAttrs 

Constructor & Destructor Documentation

◆ EmitterAttrs()

Particles::EmitterAttrs::EmitterAttrs ( )

constructor

Member Function Documentation

◆ GetBool()

bool Particles::EmitterAttrs::GetBool ( BoolAttr key) const
inline

get bool attribute

◆ GetEnvelope()

const EnvelopeCurve & Particles::EmitterAttrs::GetEnvelope ( EnvelopeAttr key) const
inline

get envelope attribute

◆ GetFloat()

float Particles::EmitterAttrs::GetFloat ( FloatAttr key) const
inline

get float attribute

◆ GetInt()

int Particles::EmitterAttrs::GetInt ( IntAttr key) const
inline

get int attribute

◆ GetVec4()

const Math::vec4 & Particles::EmitterAttrs::GetVec4 ( Float4Attr key) const
inline

get vec4 attribute

◆ SetBool()

void Particles::EmitterAttrs::SetBool ( BoolAttr key,
bool value )
inline

set bool attribute

◆ SetEnvelope()

void Particles::EmitterAttrs::SetEnvelope ( EnvelopeAttr key,
const EnvelopeCurve & value )
inline

set envelope attribute

◆ SetFloat()

void Particles::EmitterAttrs::SetFloat ( FloatAttr key,
float value )
inline

set float attribute

◆ SetInt()

void Particles::EmitterAttrs::SetInt ( IntAttr key,
int value )
inline

set int attribute

◆ SetVec4()

void Particles::EmitterAttrs::SetVec4 ( Float4Attr key,
const Math::vec4 & value )
inline

set vec4 attribute

Member Data Documentation

◆ boolAttributes

struct Particles::EmitterAttrs::BoolAttributes Particles::EmitterAttrs::boolAttributes
private

◆ envelopeValues

EnvelopeCurve Particles::EmitterAttrs::envelopeValues[NumEnvelopeAttrs]
private

◆ floatValues

float Particles::EmitterAttrs::floatValues[NumFloatAttrs]
private

◆ intAttributes

struct Particles::EmitterAttrs::IntAttributes Particles::EmitterAttrs::intAttributes
private

◆ vec4Values

Math::vec4 Particles::EmitterAttrs::vec4Values[NumFloat4Attrs]
private

The documentation for this class was generated from the following files: