OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
This affector applies a force vector to all particles to modify their trajectory. More...
#include <OgreLinearForceAffector.h>
Classes | |
class | CmdForceApp |
Command object for force application (see ParamCommand). More... | |
class | CmdForceVector |
Command object for force vector (see ParamCommand). More... | |
Public Types | |
enum | ForceApplication { FA_AVERAGE , FA_ADD } |
Choice of how to apply the force vector to particles. More... | |
Public Member Functions | |
LinearForceAffector (ParticleSystem *psys) | |
Default constructor. | |
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. | |
ForceApplication | getForceApplication (void) const |
Retrieves how the force vector is applied to a particle. | |
Vector3 | getForceVector (void) const |
Gets the force vector to apply to the particles in a system. | |
void | setForceApplication (ForceApplication fa) |
Sets how the force vector is applied to a particle. | |
void | setForceVector (const Vector3 &force) |
Sets the force vector to apply to the particles in a system. | |
Public Member Functions inherited from Ogre::ParticleAffector | |
ParticleAffector (ParticleSystem *parent) | |
virtual | ~ParticleAffector () |
Virtual destructor essential. | |
virtual void | _initParticle (Particle *pParticle) |
Method called to allow the affector to initialize all newly created particles in the system. | |
const String & | getType (void) const |
Returns the name of the type of affector. | |
Public Member Functions inherited from Ogre::StringInterface | |
StringInterface () | |
virtual | ~StringInterface () |
Virtual destructor, see Effective C++. | |
void | copyParametersTo (StringInterface *dest) const |
Method for copying this object's parameters to another object. | |
ParamDictionary * | getParamDictionary (void) |
Retrieves the parameter dictionary for this class. | |
const ParamDictionary * | getParamDictionary (void) const |
String | getParameter (const String &name) const |
Generic parameter retrieval method. | |
const ParameterList & | getParameters (void) const |
Retrieves a list of parameters valid for this object. | |
bool | setParameter (const String &name, const String &value) |
Generic parameter setting method. | |
void | setParameterList (const NameValuePairList ¶mList) |
Generic multiple parameter setting method. | |
Static Public Attributes | |
static CmdForceApp | msForceAppCmd |
static CmdForceVector | msForceVectorCmd |
Command objects. | |
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. | |
This affector applies a force vector to all particles to modify their trajectory.
Can be used for gravity, wind, or any other linear force.
This force can be applied in 2 ways: by taking the average of the particle's current momentum and the force vector, or by adding the force vector to the current particle's momentum.
Ogre::LinearForceAffector::LinearForceAffector | ( | ParticleSystem * | psys | ) |
Default constructor.
|
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.
pSystem | Pointer to a ParticleSystem to affect. |
timeElapsed | The number of seconds which have elapsed since the last call. |
Implements Ogre::ParticleAffector.
Sets the force vector to apply to the particles in a system.
Gets the force vector to apply to the particles in a system.
void Ogre::LinearForceAffector::setForceApplication | ( | ForceApplication | fa | ) |
Sets how the force vector is applied to a particle.
The default is FA_ADD.
fa | A member of the ForceApplication enum. |
ForceApplication Ogre::LinearForceAffector::getForceApplication | ( | void | ) | const |
Retrieves how the force vector is applied to a particle.
|
static |
Command objects.
|
static |