OMPF::ompfParticleSystemChunk Class Reference

#include <ompfParticleSystemChunk.h>

Inherits OMPF::ompfBaseChunk.

Public Member Functions

 ompfParticleSystemChunk ()
 
 ~ompfParticleSystemChunk ()=default
 
void setMaxParticleCount (uint16 max)
 
uint16 getMaxParticleCount () const
 
void setLoop (bool loop=true)
 
bool isLooped () const
 
void setColorGradient (const iaKeyFrameGraphColor4f &colorGradient)
 
void getColorGradient (iaKeyFrameGraphColor4f &colorGradient) const
 
void setEmissionGradient (const iaKeyFrameGraphf &emissionGradient)
 
void getEmissionGradient (iaKeyFrameGraphf &emissionGradient) const
 
void setVortexTorque (float32 min, float32 max)
 
float32 getVortexTorqueMin ()
 
float32 getVortexTorqueMax ()
 
void setVortexRange (float32 min, float32 max)
 
float32 getVortexRangeMin ()
 
float32 getVortexRangeMax ()
 
void setVortexCheckRange (uint8 particles)
 
uint8 getVortexCheckRange ()
 
void setVortexToParticleRate (float32 rate)
 
float32 getVortexToParticleRate () const
 
void setVorticityConfinement (float32 vorticityConfinement)
 
float32 getVorticityConfinement ()
 
uint32 getSize (const ompfSettings &settings) override
 
void setTextureTiling (uint8 columns, uint8 rows)
 
uint8 getTextureColumns () const
 
uint8 getTextureRows () const
 
void setStartAgeGradient (const iaKeyFrameGraphVector2f &visibleGradient)
 
void getStartAgeGradient (iaKeyFrameGraphVector2f &visibleGradient) const
 
void setSizeScaleGradient (const iaKeyFrameGraphf &sizeScaleGradient)
 
void getSizeScaleGradient (iaKeyFrameGraphf &sizeScaleGradient) const
 
void setStartSizeGradient (const iaKeyFrameGraphVector2f &sizeGradient)
 
void getStartSizeGradient (iaKeyFrameGraphVector2f &sizeGradient) const
 
void setStartVelocityGradient (const iaKeyFrameGraphVector2f &velocityGradient)
 
void getStartVelocityGradient (iaKeyFrameGraphVector2f &velocityGradient) const
 
void setStartLiftGradient (const iaKeyFrameGraphVector2f &liftGradient)
 
void getStartLiftGradient (iaKeyFrameGraphVector2f &liftGradient) const
 
void setStartOrientationGradient (const iaKeyFrameGraphVector2f &orientationGradient)
 
void getStartOrientationGradient (iaKeyFrameGraphVector2f &orientationGradient) const
 
void setStartOrientationRateGradient (const iaKeyFrameGraphVector2f &orientationRateGradient)
 
void getStartOrientationRateGradient (iaKeyFrameGraphVector2f &orientationRateGradient) const
 
void setAirDrag (float32 airDrag)
 
float32 getAirDrag () const
 
void setPeriodTime (float32 periodTime)
 
float32 getPeriodTime () const
 
void setVelocityOriented (bool velocityOriented=true)
 
bool getVelocityOriented () const
 
void setTextureA (const iaString &filename)
 
void setTextureB (const iaString &filename)
 
void setTextureC (const iaString &filename)
 
iaString getTextureA () const
 
iaString getTextureB () const
 
iaString getTextureC () const
 
void setMaterialChunkID (uint32 id)
 
uint32 getMaterialChunkID () const
 
void setEmitterChunkID (uint32 emitterID)
 
uint32 getEmitterChunkID () const
 
- Public Member Functions inherited from OMPF::ompfBaseChunk
 ompfBaseChunk (OMPFChunkType typeID)
 
virtual ~ompfBaseChunk ()=default
 
virtual bool write (std::ofstream &stream, const ompfSettings &settings)
 
virtual bool read (std::ifstream &stream, ompfSettings &settings)
 
void insertChunk (ompfBaseChunk *chunk)
 
void removeChunk (ompfBaseChunk *chunk)
 
bool hasParent () const
 
uint32 getParentID () const
 
void setParentID (const uint32 parentID)
 
bool hasChildren () const
 
const std::vector< ompfBaseChunk * > & getChildren () const
 
void setID (const uint32 chunkID)
 
uint32 getID () const
 
virtual uint32 getSize (const ompfSettings &settings)
 
OMPFChunkType getType () const
 
void setName (const iaString &name)
 
iaString getName () const
 

Detailed Description

ompf particle system chunk

Constructor & Destructor Documentation

◆ ompfParticleSystemChunk()

OMPF::ompfParticleSystemChunk::ompfParticleSystemChunk ( )

init base class

◆ ~ompfParticleSystemChunk()

OMPF::ompfParticleSystemChunk::~ompfParticleSystemChunk ( )
default

does nothing

Member Function Documentation

◆ getAirDrag()

float32 OMPF::ompfParticleSystemChunk::getAirDrag ( ) const
Returns
air drag factor

◆ getColorGradient()

void OMPF::ompfParticleSystemChunk::getColorGradient ( iaKeyFrameGraphColor4f colorGradient) const

returns the rainbow gradient

Parameters
[out]rainbowout value for the rainbow gradient

◆ getEmissionGradient()

void OMPF::ompfParticleSystemChunk::getEmissionGradient ( iaKeyFrameGraphf emissionGradient) const

returns the emission gradient

Parameters
[out]emissionGradientout value for the emission gradient

◆ getEmitterChunkID()

uint32 OMPF::ompfParticleSystemChunk::getEmitterChunkID ( ) const
Returns
the emitter node's id

◆ getMaterialChunkID()

uint32 OMPF::ompfParticleSystemChunk::getMaterialChunkID ( ) const
Returns
material chunk id

◆ getMaxParticleCount()

uint16 OMPF::ompfParticleSystemChunk::getMaxParticleCount ( ) const
Returns
the maximum particle count used

◆ getPeriodTime()

float32 OMPF::ompfParticleSystemChunk::getPeriodTime ( ) const
Returns
period time of this particle system

◆ getSize()

uint32 OMPF::ompfParticleSystemChunk::getSize ( const ompfSettings settings)
overridevirtual
Returns
size of chunk in bytes
Parameters
settingsthe settings the size calculation is based on

Reimplemented from OMPF::ompfBaseChunk.

◆ getSizeScaleGradient()

void OMPF::ompfParticleSystemChunk::getSizeScaleGradient ( iaKeyFrameGraphf sizeScaleGradient) const

returns the size scale gradient

Parameters
[out]sizeScaleGradientout value for the size gradient

◆ getStartAgeGradient()

void OMPF::ompfParticleSystemChunk::getStartAgeGradient ( iaKeyFrameGraphVector2f visibleGradient) const

returns the emission gradient

Parameters
[out]visibleGradientout value for the visible gradient

◆ getStartLiftGradient()

void OMPF::ompfParticleSystemChunk::getStartLiftGradient ( iaKeyFrameGraphVector2f liftGradient) const

returns the min max start lift gradient for particles at birth

Parameters
[out]liftGradientout value for the start lift gradient

◆ getStartOrientationGradient()

void OMPF::ompfParticleSystemChunk::getStartOrientationGradient ( iaKeyFrameGraphVector2f orientationGradient) const

returns the min max start lift gradient for particles at birth

Parameters
[out]orientationGradientout value for the start orientation gradient

◆ getStartOrientationRateGradient()

void OMPF::ompfParticleSystemChunk::getStartOrientationRateGradient ( iaKeyFrameGraphVector2f orientationRateGradient) const

returns the start min max orientation offset gradient for particles during visuble time

Parameters
[out]orientationRateGradientout value for the orientation rate gradient

◆ getStartSizeGradient()

void OMPF::ompfParticleSystemChunk::getStartSizeGradient ( iaKeyFrameGraphVector2f sizeGradient) const

returns the start size gradient for particles at birth

Parameters
[out]sizeGradientout value for the start size gradient

◆ getStartVelocityGradient()

void OMPF::ompfParticleSystemChunk::getStartVelocityGradient ( iaKeyFrameGraphVector2f velocityGradient) const

returns the min max start velocity gradient for particles at birth

Parameters
[out]velocityGradientout value for the start velocity gradient

◆ getTextureA()

iaString OMPF::ompfParticleSystemChunk::getTextureA ( ) const
Returns
file name of first texture

◆ getTextureB()

iaString OMPF::ompfParticleSystemChunk::getTextureB ( ) const
Returns
file name of second texture

◆ getTextureC()

iaString OMPF::ompfParticleSystemChunk::getTextureC ( ) const
Returns
file name of third texture

◆ getTextureColumns()

uint8 OMPF::ompfParticleSystemChunk::getTextureColumns ( ) const
Returns
the horizontal tiling resolution of the first texture layer

◆ getTextureRows()

uint8 OMPF::ompfParticleSystemChunk::getTextureRows ( ) const
Returns
the vertical tiling resolution of the first texture layer

◆ getVelocityOriented()

bool OMPF::ompfParticleSystemChunk::getVelocityOriented ( ) const
Returns
velocity oriented flag

◆ getVortexCheckRange()

uint8 OMPF::ompfParticleSystemChunk::getVortexCheckRange ( )
Returns
vortex check rangein indexes from vortex particle

◆ getVortexRangeMax()

float32 OMPF::ompfParticleSystemChunk::getVortexRangeMax ( )
Returns
maximum range of vortexes

◆ getVortexRangeMin()

float32 OMPF::ompfParticleSystemChunk::getVortexRangeMin ( )
Returns
minimum range of vortexes

◆ getVortexToParticleRate()

float32 OMPF::ompfParticleSystemChunk::getVortexToParticleRate ( ) const
Returns
likeliness of vortex particle to appear

◆ getVortexTorqueMax()

float32 OMPF::ompfParticleSystemChunk::getVortexTorqueMax ( )
Returns
maximum vortex torque

◆ getVortexTorqueMin()

float32 OMPF::ompfParticleSystemChunk::getVortexTorqueMin ( )
Returns
minimum vortex torque

◆ getVorticityConfinement()

float32 OMPF::ompfParticleSystemChunk::getVorticityConfinement ( )
Returns
vorticity confinement force

◆ isLooped()

bool OMPF::ompfParticleSystemChunk::isLooped ( ) const
Returns
true if particle system runs in loop

◆ setAirDrag()

void OMPF::ompfParticleSystemChunk::setAirDrag ( float32  airDrag)

sets air drag 0.0-1.0 1.0 means basically no air drag 0.0 is a full stop and about 0.99 is a usefull value for simulating air drag

Parameters
airDragthe air drag factor (0.0 - 1.0)

◆ setColorGradient()

void OMPF::ompfParticleSystemChunk::setColorGradient ( const iaKeyFrameGraphColor4f colorGradient)

sets rainbow gradient for particles color

Parameters
rainbowthe rainbow gradient

◆ setEmissionGradient()

void OMPF::ompfParticleSystemChunk::setEmissionGradient ( const iaKeyFrameGraphf emissionGradient)

sets emission gradient for particles per frame

Parameters
emissionGradientthe emission gradient

◆ setEmitterChunkID()

void OMPF::ompfParticleSystemChunk::setEmitterChunkID ( uint32  emitterID)

sets emitter node id

Parameters
emitterIDthe emitter node's id

◆ setLoop()

void OMPF::ompfParticleSystemChunk::setLoop ( bool  loop = true)

sets if the particle system runs in a loop

Parameters
loopif true particle system runs in loop

◆ setMaterialChunkID()

void OMPF::ompfParticleSystemChunk::setMaterialChunkID ( uint32  id)

sets material chunk id

Parameters
idthe material chunk id

◆ setMaxParticleCount()

void OMPF::ompfParticleSystemChunk::setMaxParticleCount ( uint16  max)

sets the maximum particle count

set to zero if you don't want a limit of created particles

Parameters
maxthe maximum count of particles used

◆ setPeriodTime()

void OMPF::ompfParticleSystemChunk::setPeriodTime ( float32  periodTime)

sets period time of this particle system

if loop is true. the particle system will be restarted after this time if loop is false. the particle system simulation will be stopped

Parameters
periodTimethe period time

◆ setSizeScaleGradient()

void OMPF::ompfParticleSystemChunk::setSizeScaleGradient ( const iaKeyFrameGraphf sizeScaleGradient)

sets size scale gradient for particles per frame

Parameters
sizeScaleGradientthe size gradient

◆ setStartAgeGradient()

void OMPF::ompfParticleSystemChunk::setStartAgeGradient ( const iaKeyFrameGraphVector2f visibleGradient)

sets visible gradient for particles per frame

Parameters
visibleGradientthe visible gradient

◆ setStartLiftGradient()

void OMPF::ompfParticleSystemChunk::setStartLiftGradient ( const iaKeyFrameGraphVector2f liftGradient)

sets min max start lift gradient for particles at birth

Parameters
liftGradientthe min max start lift gradient

◆ setStartOrientationGradient()

void OMPF::ompfParticleSystemChunk::setStartOrientationGradient ( const iaKeyFrameGraphVector2f orientationGradient)

sets min max start orientation gradient for particles at birth

Parameters
orientationGradientthe min max start orientation gradient

◆ setStartOrientationRateGradient()

void OMPF::ompfParticleSystemChunk::setStartOrientationRateGradient ( const iaKeyFrameGraphVector2f orientationRateGradient)

sets start min max orientation rate gradient for particles during visible time

Parameters
orientationRateGradientthe min max orientation rate gradient

◆ setStartSizeGradient()

void OMPF::ompfParticleSystemChunk::setStartSizeGradient ( const iaKeyFrameGraphVector2f sizeGradient)

sets start size gradient for particles at birth

Parameters
sizeGradientthe start size gradient with min and max values

◆ setStartVelocityGradient()

void OMPF::ompfParticleSystemChunk::setStartVelocityGradient ( const iaKeyFrameGraphVector2f velocityGradient)

sets min max start velocity gradient for particles at birth

Parameters
velocityGradientthe min max start velocity gradient

◆ setTextureA()

void OMPF::ompfParticleSystemChunk::setTextureA ( const iaString filename)

sets first texture

Parameters
filenamefile name of texture

◆ setTextureB()

void OMPF::ompfParticleSystemChunk::setTextureB ( const iaString filename)

sets second texture

Parameters
filenamefile name of texture

◆ setTextureC()

void OMPF::ompfParticleSystemChunk::setTextureC ( const iaString filename)

sets third texture

Parameters
filenamefile name of texture

◆ setTextureTiling()

void OMPF::ompfParticleSystemChunk::setTextureTiling ( uint8  columns,
uint8  rows 
)

sets the tiling resolution of the first texture layer

Parameters
columnscolumn count (<= 1)
rowsrow count (<= 1)

◆ setVelocityOriented()

void OMPF::ompfParticleSystemChunk::setVelocityOriented ( bool  velocityOriented = true)

sets the velocity oriented flag particles will be rendered oriented by thair velocity and screen

default id off

Parameters
velocityOrientedif true particles get rendered velocity oriented

◆ setVortexCheckRange()

void OMPF::ompfParticleSystemChunk::setVortexCheckRange ( uint8  particles)

sets vortex check range

Parameters
particlesdistance in indexes from vortex particle

◆ setVortexRange()

void OMPF::ompfParticleSystemChunk::setVortexRange ( float32  min,
float32  max 
)

sets minimum and maximum range of vortexes

Parameters
minminimum range of vortex
maxmaximum range of vortex

◆ setVortexToParticleRate()

void OMPF::ompfParticleSystemChunk::setVortexToParticleRate ( float32  rate)

sets the vortex to particle ratio

Parameters
ratethe rate of vortex particles to particles. default 0.01 = 1%

◆ setVortexTorque()

void OMPF::ompfParticleSystemChunk::setVortexTorque ( float32  min,
float32  max 
)

sets the range of vortex torque

Parameters
minminimum vortex torque
maxmaximum vortex torque

◆ setVorticityConfinement()

void OMPF::ompfParticleSystemChunk::setVorticityConfinement ( float32  vorticityConfinement)

sets vorticity confinement force

Parameters
vorticityConfinementthe vorticity confinement force

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