OGRE  13.6
Object-Oriented Graphics Rendering Engine
Ogre::TextureAnimatorAffector Class Reference

This affector makes it possible to have an animated texture for each individual particle. More...

#include <OgreTextureAnimatorAffector.h>

+ Inheritance diagram for Ogre::TextureAnimatorAffector:

Public Member Functions

 TextureAnimatorAffector (ParticleSystem *psys)
 
void _affectParticles (ParticleSystem *pSystem, Real timeElapsed) override
 Method called to allow the affector to 'do it's stuff' on all active particles in the system. More...
 
void _initParticle (Particle *pParticle) override
 Method called to allow the affector to initialize all newly created particles in the system. More...
 
float getDuration (void) const
 
uint8 getTexcoordCount (void) const
 
uint8 getTexcoordStart (void) const
 
float isRandomStartOffset (void) const
 
void setDuration (float duration)
 The length of time it takes to display the whole animation sequence, in seconds. More...
 
void setTexcoordCount (uint8 count)
 Sets the number of texcoords to use. More...
 
void setTexcoordStart (uint8 start)
 Sets the texcoord index at which the animation should start. More...
 
void useRandomStartOffset (float enable)
 Start animation at random frame in the texture sheet. More...
 
- Public Member Functions inherited from Ogre::ParticleAffector
 ParticleAffector (ParticleSystem *parent)
 
virtual ~ParticleAffector ()
 Virtual destructor essential. More...
 
const StringgetType (void) const
 Returns the name of the type of affector. More...
 
- Public Member Functions inherited from Ogre::StringInterface
 StringInterface ()
 
virtual ~StringInterface ()
 Virtual destructor, see Effective C++. More...
 
void copyParametersTo (StringInterface *dest) const
 Method for copying this object's parameters to another object. More...
 
ParamDictionarygetParamDictionary (void)
 Retrieves the parameter dictionary for this class. More...
 
const ParamDictionarygetParamDictionary (void) const
 
String getParameter (const String &name) const
 Generic parameter retrieval method. More...
 
const ParameterListgetParameters (void) const
 Retrieves a list of parameters valid for this object. More...
 
bool setParameter (const String &name, const String &value)
 Generic parameter setting method. More...
 
void setParameterList (const NameValuePairList &paramList)
 Generic multiple parameter setting method. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Ogre::StringInterface
static void cleanupDictionary ()
 Cleans up the static 'msDictionary' required to reset Ogre, otherwise the containers are left with invalid pointers, which will lead to a crash as soon as one of the ResourceManager implementers (e.g. More...
 

Detailed Description

This affector makes it possible to have an animated texture for each individual particle.

Constructor & Destructor Documentation

◆ TextureAnimatorAffector()

Ogre::TextureAnimatorAffector::TextureAnimatorAffector ( ParticleSystem psys)

Member Function Documentation

◆ _affectParticles()

void Ogre::TextureAnimatorAffector::_affectParticles ( ParticleSystem pSystem,
Real  timeElapsed 
)
overridevirtual

Method called to allow the affector to 'do it's stuff' on all active particles in the system.

This is where the affector gets the chance to apply it's effects to the particles of a system. The affector is expected to apply it's effect to some or all of the particles in the system passed to it, depending on the affector's approach.

Parameters
pSystemPointer to a ParticleSystem to affect.
timeElapsedThe number of seconds which have elapsed since the last call.

Implements Ogre::ParticleAffector.

◆ _initParticle()

void Ogre::TextureAnimatorAffector::_initParticle ( Particle pParticle)
overridevirtual

Method called to allow the affector to initialize all newly created particles in the system.

This is where the affector gets the chance to initialize it's effects to the particles of a system. The affector is expected to initialize some or all of the particles in the system passed to it, depending on the affector's approach.

Parameters
pParticlePointer to a Particle to initialize.

Reimplemented from Ogre::ParticleAffector.

◆ setTexcoordStart()

void Ogre::TextureAnimatorAffector::setTexcoordStart ( uint8  start)
inline

Sets the texcoord index at which the animation should start.

default: 0

◆ getTexcoordStart()

uint8 Ogre::TextureAnimatorAffector::getTexcoordStart ( void  ) const
inline

◆ setTexcoordCount()

void Ogre::TextureAnimatorAffector::setTexcoordCount ( uint8  count)
inline

Sets the number of texcoords to use.

Note
you must set this one and start + count must not exceed the number of frames in the sprite sheet

◆ getTexcoordCount()

uint8 Ogre::TextureAnimatorAffector::getTexcoordCount ( void  ) const
inline

◆ setDuration()

void Ogre::TextureAnimatorAffector::setDuration ( float  duration)
inline

The length of time it takes to display the whole animation sequence, in seconds.

If set to 0 (default) the duration equals the particle time to live. Using a different value here, you can play back the animation faster (looping) or slower. When negative, the animation is disabled. This is useful to just pick a random sprite (see below) and keep it.

◆ getDuration()

float Ogre::TextureAnimatorAffector::getDuration ( void  ) const
inline

◆ useRandomStartOffset()

void Ogre::TextureAnimatorAffector::useRandomStartOffset ( float  enable)
inline

Start animation at random frame in the texture sheet.

Useful to randomly phase the animation between particles.

◆ isRandomStartOffset()

float Ogre::TextureAnimatorAffector::isRandomStartOffset ( void  ) const
inline

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