OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
This emitter emits particles from a single point, which is it’s position. More...
#include <OgrePointEmitter.h>
Public Member Functions | |
PointEmitter (ParticleSystem *psys) | |
void | _initParticle (Particle *pParticle) override |
Initialises a particle based on the emitter's approach and parameters. | |
Public Member Functions inherited from Ogre::ParticleEmitter | |
ParticleEmitter (ParticleSystem *psys) | |
virtual | ~ParticleEmitter () |
Virtual destructor essential. | |
virtual unsigned short | _getEmissionCount (Real timeElapsed) |
Gets the number of particles which this emitter would like to emit based on the time elapsed. | |
virtual const Radian & | getAngle (void) const |
Returns the maximum angle which the initial particle direction can deviate from the emitters base direction. | |
virtual const ColourValue & | getColour (void) const |
Gets the colour of particles to be emitted. | |
virtual const ColourValue & | getColourRangeEnd (void) const |
Gets the maximum colour of particles to be emitted. | |
virtual const ColourValue & | getColourRangeStart (void) const |
Gets the minimum colour of particles to be emitted. | |
virtual const Vector3 & | getDirection (void) const |
Returns the base direction of the emitter. | |
virtual const Vector3 & | getDirPositionReference () const |
Returns the position reference to generate direction of emitted particles. | |
virtual bool | getDirPositionReferenceEnabled () const |
Returns whether direction or position reference is used. | |
virtual Real | getDuration (void) const |
Gets the duration of the emitter from when it is created or re-enabled. | |
virtual Real | getEmissionRate (void) const |
Returns the emission rate set for this emitter. | |
const String & | getEmittedEmitter (void) const |
Returns the name of the emitter to be emitted. | |
virtual bool | getEnabled (void) const |
Gets the flag indicating if this emitter is enabled or not. | |
virtual Real | getMaxDuration (void) const |
Gets the maximum duration of this emitter in seconds (see setDuration for more details) | |
virtual Real | getMaxParticleVelocity (void) const |
Returns the maximum particle velocity. | |
virtual Real | getMaxRepeatDelay (void) const |
Gets the maximum duration of this emitter in seconds (see setRepeatDelay for more details) | |
virtual Real | getMaxTimeToLive (void) const |
Gets the maximum time each particle will live for. | |
virtual Real | getMinDuration (void) const |
Gets the minimum duration of this emitter in seconds (see setDuration for more details) | |
virtual Real | getMinParticleVelocity (void) const |
Returns the minimum particle velocity. | |
virtual Real | getMinRepeatDelay (void) const |
Gets the minimum duration of this emitter in seconds (see setRepeatDelay for more details) | |
virtual Real | getMinTimeToLive (void) const |
Gets the minimum time each particle will live for. | |
const String & | getName (void) const |
Returns the name of the emitter. | |
virtual Real | getParticleVelocity (void) const |
Returns the initial velocity of particles emitted. | |
virtual const Vector3 & | getPosition (void) const |
Returns the position of this emitter relative to the center of the particle system. | |
virtual Real | getRepeatDelay (void) const |
Gets the duration of the emitter from when it is created or re-enabled. | |
virtual Real | getStartTime (void) const |
Gets the start time of the emitter. | |
virtual Real | getTimeToLive (void) const |
Gets the time each particle will live for. | |
const String & | getType (void) const |
Returns the name of the type of emitter. | |
virtual const Vector3 & | getUp (void) const |
Returns the up vector of the emitter. | |
virtual bool | isEmitted (void) const |
Return true if the emitter is emitted by another emitter. | |
virtual void | setAngle (const Radian &angle) |
Sets the maximum angle away from the emitter direction which particle will be emitted. | |
virtual void | setColour (const ColourValue &colour) |
Sets the initial colour of particles emitted. | |
virtual void | setColour (const ColourValue &colourStart, const ColourValue &colourEnd) |
Sets the range of colours for emitted particles. | |
virtual void | setColourRangeEnd (const ColourValue &colour) |
Sets the maximum colour of particles to be emitted. | |
virtual void | setColourRangeStart (const ColourValue &colour) |
Sets the minimum colour of particles to be emitted. | |
virtual void | setDirection (const Vector3 &direction) |
Sets the direction of the emitter. | |
virtual void | setDirPositionReference (const Vector3 &position, bool enable) |
Sets the direction of the emitter. | |
virtual void | setDuration (Real duration) |
Sets the duration of the emitter. | |
virtual void | setDuration (Real min, Real max) |
Sets the range of random duration for this emitter. | |
virtual void | setEmissionRate (Real particlesPerSecond) |
Sets the emission rate for this emitter. | |
virtual void | setEmitted (bool emitted) |
Set the indication (true/false) to indicate that the emitter is emitted by another emitter. | |
virtual void | setEmittedEmitter (const String &emittedEmitter) |
Sets the name of the emitter to be emitted. | |
virtual void | setEnabled (bool enabled) |
Sets whether or not the emitter is enabled. | |
virtual void | setMaxDuration (Real max) |
Sets the maximum duration of this emitter in seconds (see setDuration for more details) | |
virtual void | setMaxParticleVelocity (Real max) |
Returns the maximum particle velocity. | |
virtual void | setMaxRepeatDelay (Real max) |
Sets the maximum duration of this emitter in seconds (see setRepeatDelay for more details) | |
virtual void | setMaxTimeToLive (Real max) |
Sets the maximum time each particle will live for. | |
virtual void | setMinDuration (Real min) |
Sets the minimum duration of this emitter in seconds (see setDuration for more details) | |
virtual void | setMinParticleVelocity (Real min) |
Returns the minimum particle velocity. | |
virtual void | setMinRepeatDelay (Real min) |
Sets the minimum duration of this emitter in seconds (see setRepeatDelay for more details) | |
virtual void | setMinTimeToLive (Real min) |
Sets the minimum time each particle will live for. | |
virtual void | setName (const String &newName) |
Sets the name of the emitter. | |
virtual void | setParticleVelocity (Real min, Real max) |
Sets the initial velocity range of particles emitted. | |
virtual void | setParticleVelocity (Real speed) |
Sets the initial velocity of particles emitted. | |
virtual void | setPosition (const Vector3 &pos) |
Sets the position of this emitter relative to the particle system center. | |
virtual void | setRepeatDelay (Real duration) |
Sets the time between repeats of the emitter. | |
virtual void | setRepeatDelay (Real min, Real max) |
Sets the range of random duration for this emitter. | |
virtual void | setStartTime (Real startTime) |
Sets the 'start time' of this emitter. | |
virtual void | setTimeToLive (Real minTtl, Real maxTtl) |
Sets the range of lifetime for particles emitted. | |
virtual void | setTimeToLive (Real ttl) |
Sets the lifetime of all particles emitted. | |
virtual void | setUp (const Vector3 &up) |
Sets the notional up vector of the emitter. | |
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. | |
Public Member Functions inherited from Ogre::Particle | |
Particle () | |
float | getOwnHeight (void) const |
Retrieves the particle's personal width, if hasOwnDimensions is true. | |
float | getOwnWidth (void) const |
Retrieves the particle's personal width, if hasOwnDimensions is true. | |
const Radian & | getRotation (void) const |
bool | hasOwnDimensions (void) const |
void | setDimensions (float width, float height) |
Sets the width and height for this particle. | |
void | setRotation (const Radian &rad) |
Sets the current rotation. | |
Additional Inherited Members | |
Public Types inherited from Ogre::Particle | |
enum | ParticleType : uint8 { Visual , Emitter } |
Type of particle. More... | |
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. | |
Public Attributes inherited from Ogre::Particle | |
RGBA | mColour |
Current colour. | |
Vector3 | mDirection |
Direction (and speed) | |
float | mHeight |
Particle height. | |
ParticleType | mParticleType |
Determines the type of particle. | |
Vector3 | mPosition |
World position. | |
uint8 | mRandomTexcoordOffset |
Radian | mRotation |
Current rotation value. | |
Radian | mRotationSpeed |
Speed of rotation in radians/sec. | |
uint8 | mTexcoordIndex |
Index into the array of texture coordinates. | |
float | mTimeToLive |
Time to live, number of seconds left of particles natural life. | |
float | mTotalTimeToLive |
Total Time to live, number of seconds of particles natural life. | |
float | mWidth |
Particle width. | |
This emitter emits particles from a single point, which is it’s position.
The initial direction of these particles can either be a single direction (i.e. a line), a random scattering inside a cone, or a random scattering in all directions, depending the 'angle' parameter, which is the angle across which to scatter the particles either side of the base direction of the emitter.
Ogre::PointEmitter::PointEmitter | ( | ParticleSystem * | psys | ) |
Initialises a particle based on the emitter's approach and parameters.
See the _getEmissionCount method for details of why there is a separation between 'requested' emissions and actual initialised particles.
pParticle | Pointer to a particle which must be initialised based on how this emitter starts particles. This is passed as a pointer rather than being created by the emitter so the ParticleSystem can reuse Particle instances, and can also set defaults itself. |
Reimplemented from Ogre::ParticleEmitter.