Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Ogre::BoxEmitter Class Reference

Particle emitter which emits particles randomly from points inside a box. More...

#include <OgreBoxEmitter.h>

Inheritance diagram for Ogre::BoxEmitter:

Ogre::AreaEmitter Ogre::ParticleEmitter Ogre::StringInterface List of all members.

Public Member Functions

 BoxEmitter (ParticleSystem *psys)
void _initParticle (Particle *pParticle)
 See ParticleEmitter.

unsigned short _getEmissionCount (Real timeElapsed)
 See ParticleEmitter.

void setDirection (const Vector3 &direction)
 Overloaded to update the trans.

void setSize (const Vector3 &size)
 Sets the size of the area from which particles are emitted.

void setSize (Real x, Real y, Real z)
 Sets the size of the area from which particles are emitted.

void setWidth (Real width)
 Sets the width (local x size) of the emitter.

Real getWidth (void) const
 Gets the width (local x size) of the emitter.

void setHeight (Real Height)
 Sets the height (local y size) of the emitter.

Real getHeight (void) const
 Gets the height (local y size) of the emitter.

void setDepth (Real Depth)
 Sets the depth (local y size) of the emitter.

Real getDepth (void) const
 Gets the depth (local y size) of the emitter.

virtual void setPosition (const Vector3 &pos)
 Sets the position of this emitter relative to the particle system center.

virtual const Vector3getPosition (void) const
 Returns the position of this emitter relative to thte center of the particle system.

virtual const Vector3getDirection (void) const
 Returns the base direction of the emitter.

virtual void setAngle (const Radian &angle)
 Sets the maximum angle away from the emitter direction which particle will be emitted.

virtual const RadiangetAngle (void) const
 Returns the maximum angle which the initial particle direction can deviate from the emitters base direction.

virtual void setParticleVelocity (Real speed)
 Sets the initial velocity of particles emitted.

virtual void setParticleVelocity (Real min, Real max)
 Sets the initial velocity range of particles emitted.

virtual void setMinParticleVelocity (Real min)
 Returns the minimum particle velocity.

virtual void setMaxParticleVelocity (Real max)
 Returns the maximum particle velocity.

virtual Real getParticleVelocity (void) const
 Returns the initial velocity of particles emitted.

virtual Real getMinParticleVelocity (void) const
 Returns the minimum particle velocity.

virtual Real getMaxParticleVelocity (void) const
 Returns the maximum particle velocity.

virtual void setEmissionRate (Real particlesPerSecond)
 Sets the emission rate for this emitter.

virtual Real getEmissionRate (void) const
 Returns the emission rate set for this emitter.

virtual void setTimeToLive (Real ttl)
 Sets the lifetime of all particles emitted.

virtual void setTimeToLive (Real minTtl, Real maxTtl)
 Sets the range of lifetime for particles emitted.

virtual void setMinTimeToLive (Real min)
 Sets the minimum time each particle will live for.

virtual void setMaxTimeToLive (Real max)
 Sets the maximum time each particle will live for.

virtual Real getTimeToLive (void) const
 Gets the time each particle will live for.

virtual Real getMinTimeToLive (void) const
 Gets the minimum time each particle will live for.

virtual Real getMaxTimeToLive (void) const
 Gets the maximum time each particle will live for.

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 setColourRangeStart (const ColourValue &colour)
 Sets the minimum colour of particles to be emitted.

virtual void setColourRangeEnd (const ColourValue &colour)
 Sets the maximum colour of particles to be emitted.

virtual const ColourValuegetColour (void) const
 Gets the colour of particles to be emitted.

virtual const ColourValuegetColourRangeStart (void) const
 Gets the minimum colour of particles to be emitted.

virtual const ColourValuegetColourRangeEnd (void) const
 Gets the maximum colour of particles to be emitted.

const StringgetType (void) const
 Returns the name of the type of emitter.

virtual void setEnabled (bool enabled)
 Sets whether or not the emitter is enabled.

virtual bool getEnabled (void) const
 Gets the flag indicating if this emitter is enabled or not.

virtual void setStartTime (Real startTime)
 Sets the 'start time' of this emitter.

virtual Real getStartTime (void) const
 Gets the start time 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 Real getDuration (void) const
 Gets the duration of the emitter from when it is created or re-enabled.

virtual void setMinDuration (Real min)
 Sets the minimum duration of this emitter in seconds (see setDuration for more details).

virtual void setMaxDuration (Real max)
 Sets the maximum duration of this emitter in seconds (see setDuration for more details).

virtual Real getMinDuration (void) const
 Gets the minimum duration of this emitter in seconds (see setDuration for more details).

virtual Real getMaxDuration (void) const
 Gets the maximum duration of this emitter in seconds (see setDuration for more details).

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 Real getRepeatDelay (void) const
 Gets the duration of the emitter from when it is created or re-enabled.

virtual void setMinRepeatDelay (Real min)
 Sets the minimum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual void setMaxRepeatDelay (Real max)
 Sets the maximum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual Real getMinRepeatDelay (void) const
 Gets the minimum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual Real getMaxRepeatDelay (void) const
 Gets the maximum duration of this emitter in seconds (see setRepeatDelay for more details).

ParamDictionarygetParamDictionary (void)
 Retrieves the parameter dictionary for this class.

const ParamDictionarygetParamDictionary (void) const
const ParameterListgetParameters (void) const
 Retrieves a list of parameters valid for this object.

virtual bool setParameter (const String &name, const String &value)
 Generic parameter setting method.

virtual void setParameterList (const NameValuePairList &paramList)
 Generic multiple parameter setting method.

virtual String getParameter (const String &name) const
 Generic parameter retrieval method.

virtual void copyParametersTo (StringInterface *dest) const
 Method for copying this object's parameters to another object.


Static Public Member Functions

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.


Protected Member Functions

void genAreaAxes (void)
 Internal method for generating the area axes.

bool initDefaults (const String &mType)
 Internal for initializing some defaults and parameters.

virtual void genEmissionDirection (Vector3 &destVector)
 Internal utility method for generating particle exit direction.

virtual void genEmissionVelocity (Vector3 &destVector)
 Internal utility method to apply velocity to a particle direction.

virtual Real genEmissionTTL (void)
 Internal utility method for generating a time-to-live for a particle.

virtual void genEmissionColour (ColourValue &destColour)
 Internal utility method for generating a colour for a particle.

virtual unsigned short genConstantEmissionCount (Real timeElapsed)
 Internal utility method for generating an emission count based on a constant emission rate.

void addBaseParameters (void)
 Internal method for setting up the basic parameter definitions for a subclass.

void initDurationRepeat (void)
 Internal method for initialising the duration & repeat of an emitter.

bool createParamDictionary (const String &className)
 Internal method for creating a parameter dictionary for the class, if it does not already exist.


Protected Attributes

Vector3 mSize
 Size of the area.

Vector3 mXRange
 Local axes, not normalised, their magnitude reflects area size.

Vector3 mYRange
 Local axes, not normalised, their magnitude reflects area size.

Vector3 mZRange
 Local axes, not normalised, their magnitude reflects area size.

ParticleSystemmParent
 Parent particle system.

Vector3 mPosition
 Position relative to the center of the ParticleSystem.

Real mEmissionRate
 Rate in particles per second at which this emitter wishes to emit particles.

String mType
 Name of the type of emitter, MUST be initialised by subclasses.

Vector3 mDirection
 Base direction of the emitter, may not be used by some emitters.

Vector3 mUp
Radian mAngle
 Angle around direction which particles may be emitted, internally radians but angleunits for interface.

Real mMinSpeed
 Min speed of particles.

Real mMaxSpeed
 Max speed of particles.

Real mMinTTL
 Initial time-to-live of particles (min).

Real mMaxTTL
 Initial time-to-live of particles (max).

ColourValue mColourRangeStart
 Initial colour of particles (range start).

ColourValue mColourRangeEnd
 Initial colour of particles (range end).

bool mEnabled
 Whether this emitter is currently enabled (defaults to true).

Real mStartTime
 Start time (in seconds from start of first call to ParticleSystem to update).

Real mDurationMin
 Minimum length of time emitter will run for (0 = forever).

Real mDurationMax
 Maximum length of time the emitter will run for (0 = forever).

Real mDurationRemain
 Current duration remainder.

Real mRepeatDelayMin
 Time between each repeat.

Real mRepeatDelayMax
Real mRepeatDelayRemain
 Repeat delay left.

Real mRemainder
String mParamDictName
 Class name for this instance to be used as a lookup (must be initialised by subclasses).


Static Protected Attributes

CmdWidth msWidthCmd
 Command objects.

CmdHeight msHeightCmd
CmdDepth msDepthCmd
EmitterCommands::CmdAngle msAngleCmd
EmitterCommands::CmdColour msColourCmd
EmitterCommands::CmdColourRangeStart msColourRangeStartCmd
EmitterCommands::CmdColourRangeEnd msColourRangeEndCmd
EmitterCommands::CmdDirection msDirectionCmd
EmitterCommands::CmdEmissionRate msEmissionRateCmd
EmitterCommands::CmdMaxTTL msMaxTTLCmd
EmitterCommands::CmdMaxVelocity msMaxVelocityCmd
EmitterCommands::CmdMinTTL msMinTTLCmd
EmitterCommands::CmdMinVelocity msMinVelocityCmd
EmitterCommands::CmdPosition msPositionCmd
EmitterCommands::CmdTTL msTTLCmd
EmitterCommands::CmdVelocity msVelocityCmd
EmitterCommands::CmdDuration msDurationCmd
EmitterCommands::CmdMinDuration msMinDurationCmd
EmitterCommands::CmdMaxDuration msMaxDurationCmd
EmitterCommands::CmdRepeatDelay msRepeatDelayCmd
EmitterCommands::CmdMinRepeatDelay msMinRepeatDelayCmd
EmitterCommands::CmdMaxRepeatDelay msMaxRepeatDelayCmd
ParamDictionaryMap msDictionary
 Dictionary of parameters.


Detailed Description

Particle emitter which emits particles randomly from points inside a box.

Remarks:
This basic particle emitter emits particles from a box area. 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.

Definition at line 41 of file OgreBoxEmitter.h.


Constructor & Destructor Documentation

Ogre::BoxEmitter::BoxEmitter ParticleSystem psys  ) 
 


Member Function Documentation

unsigned short Ogre::AreaEmitter::_getEmissionCount Real  timeElapsed  )  [virtual, inherited]
 

See ParticleEmitter.

Implements Ogre::ParticleEmitter.

void Ogre::BoxEmitter::_initParticle Particle pParticle  )  [virtual]
 

See ParticleEmitter.

Reimplemented from Ogre::ParticleEmitter.

void Ogre::ParticleEmitter::addBaseParameters void   )  [protected, inherited]
 

Internal method for setting up the basic parameter definitions for a subclass.

Remarks:
Because StringInterface holds a dictionary of parameters per class, subclasses need to call this to ask the base class to add it's parameters to their dictionary as well. Can't do this in the constructor because that runs in a non-virtual context.
The subclass must have called it's own createParamDictionary before calling this method.

void Ogre::StringInterface::cleanupDictionary  )  [static, inherited]
 

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.

MaterialManager) initializes.

virtual void Ogre::StringInterface::copyParametersTo StringInterface dest  )  const [virtual, inherited]
 

Method for copying this object's parameters to another object.

Remarks:
This method takes the values of all the object's parameters and tries to set the same values on the destination object. This provides a completely type independent way to copy parameters to other objects. Note that because of the String manipulation involved, this should not be regarded as an efficient process and should be saved for times outside of the rendering loop.
Any unrecognised parameters will be ignored as with setParameter method.
Parameters:
dest Pointer to object to have it's parameters set the same as this object.

Definition at line 296 of file OgreStringInterface.h.

References Ogre::ParamDictionary::mParamDefs, and Ogre::StringInterface::setParameter().

bool Ogre::StringInterface::createParamDictionary const String className  )  [protected, inherited]
 

Internal method for creating a parameter dictionary for the class, if it does not already exist.

Remarks:
This method will check to see if a parameter dictionary exist for this class yet, and if not will create one. NB you must supply the name of the class (RTTI is not used or performance).
Parameters:
className the name of the class using the dictionary
Returns:
true if a new dictionary was created, false if it was already there

Definition at line 172 of file OgreStringInterface.h.

References Ogre::String.

void Ogre::AreaEmitter::genAreaAxes void   )  [protected, inherited]
 

Internal method for generating the area axes.

virtual unsigned short Ogre::ParticleEmitter::genConstantEmissionCount Real  timeElapsed  )  [protected, virtual, inherited]
 

Internal utility method for generating an emission count based on a constant emission rate.

virtual void Ogre::ParticleEmitter::genEmissionColour ColourValue destColour  )  [protected, virtual, inherited]
 

Internal utility method for generating a colour for a particle.

virtual void Ogre::ParticleEmitter::genEmissionDirection Vector3 destVector  )  [protected, virtual, inherited]
 

Internal utility method for generating particle exit direction.

Parameters:
destVector Reference to vector to complete with new direction (normalised)

virtual Real Ogre::ParticleEmitter::genEmissionTTL void   )  [protected, virtual, inherited]
 

Internal utility method for generating a time-to-live for a particle.

virtual void Ogre::ParticleEmitter::genEmissionVelocity Vector3 destVector  )  [protected, virtual, inherited]
 

Internal utility method to apply velocity to a particle direction.

Parameters:
destVector The vector to scale by a randomly generated scale between min and max speed. Assumed normalised already, and likely already oriented in the right direction.

virtual const Radian& Ogre::ParticleEmitter::getAngle void   )  const [virtual, inherited]
 

Returns the maximum angle which the initial particle direction can deviate from the emitters base direction.

virtual const ColourValue& Ogre::ParticleEmitter::getColour void   )  const [virtual, inherited]
 

Gets the colour of particles to be emitted.

virtual const ColourValue& Ogre::ParticleEmitter::getColourRangeEnd void   )  const [virtual, inherited]
 

Gets the maximum colour of particles to be emitted.

virtual const ColourValue& Ogre::ParticleEmitter::getColourRangeStart void   )  const [virtual, inherited]
 

Gets the minimum colour of particles to be emitted.

Real Ogre::AreaEmitter::getDepth void   )  const [inherited]
 

Gets the depth (local y size) of the emitter.

virtual const Vector3& Ogre::ParticleEmitter::getDirection void   )  const [virtual, inherited]
 

Returns the base direction of the emitter.

virtual Real Ogre::ParticleEmitter::getDuration void   )  const [virtual, inherited]
 

Gets the duration of the emitter from when it is created or re-enabled.

virtual Real Ogre::ParticleEmitter::getEmissionRate void   )  const [virtual, inherited]
 

Returns the emission rate set for this emitter.

virtual bool Ogre::ParticleEmitter::getEnabled void   )  const [virtual, inherited]
 

Gets the flag indicating if this emitter is enabled or not.

Real Ogre::AreaEmitter::getHeight void   )  const [inherited]
 

Gets the height (local y size) of the emitter.

virtual Real Ogre::ParticleEmitter::getMaxDuration void   )  const [virtual, inherited]
 

Gets the maximum duration of this emitter in seconds (see setDuration for more details).

virtual Real Ogre::ParticleEmitter::getMaxParticleVelocity void   )  const [virtual, inherited]
 

Returns the maximum particle velocity.

virtual Real Ogre::ParticleEmitter::getMaxRepeatDelay void   )  const [virtual, inherited]
 

Gets the maximum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual Real Ogre::ParticleEmitter::getMaxTimeToLive void   )  const [virtual, inherited]
 

Gets the maximum time each particle will live for.

virtual Real Ogre::ParticleEmitter::getMinDuration void   )  const [virtual, inherited]
 

Gets the minimum duration of this emitter in seconds (see setDuration for more details).

virtual Real Ogre::ParticleEmitter::getMinParticleVelocity void   )  const [virtual, inherited]
 

Returns the minimum particle velocity.

virtual Real Ogre::ParticleEmitter::getMinRepeatDelay void   )  const [virtual, inherited]
 

Gets the minimum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual Real Ogre::ParticleEmitter::getMinTimeToLive void   )  const [virtual, inherited]
 

Gets the minimum time each particle will live for.

const ParamDictionary* Ogre::StringInterface::getParamDictionary void   )  const [inherited]
 

Definition at line 209 of file OgreStringInterface.h.

ParamDictionary* Ogre::StringInterface::getParamDictionary void   )  [inherited]
 

Retrieves the parameter dictionary for this class.

Remarks:
Only valid to call this after createParamDictionary.
Returns:
Pointer to ParamDictionary shared by all instances of this class which you can add parameters to, retrieve parameters etc.

Definition at line 196 of file OgreStringInterface.h.

virtual String Ogre::StringInterface::getParameter const String name  )  const [virtual, inherited]
 

Generic parameter retrieval method.

Remarks:
Call this method with the name of a parameter to retrieve a string-format value of the parameter in question. If in doubt, check the parameter definition in the list returned from getParameters for the type of this parameter. If you like you can use StringConverter to convert this string back into a native type.
Parameters:
name The name of the parameter to get
Returns:
String value of parameter, blank if not found

Definition at line 265 of file OgreStringInterface.h.

References Ogre::ParamCommand::doGet(), Ogre::ParamDictionary::getParamCommand(), and Ogre::String.

const ParameterList& Ogre::StringInterface::getParameters void   )  const [inherited]
 

Retrieves a list of parameters valid for this object.

Returns:
A reference to a static list of ParameterDef objects.

virtual Real Ogre::ParticleEmitter::getParticleVelocity void   )  const [virtual, inherited]
 

Returns the initial velocity of particles emitted.

virtual const Vector3& Ogre::ParticleEmitter::getPosition void   )  const [virtual, inherited]
 

Returns the position of this emitter relative to thte center of the particle system.

virtual Real Ogre::ParticleEmitter::getRepeatDelay void   )  const [virtual, inherited]
 

Gets the duration of the emitter from when it is created or re-enabled.

virtual Real Ogre::ParticleEmitter::getStartTime void   )  const [virtual, inherited]
 

Gets the start time of the emitter.

virtual Real Ogre::ParticleEmitter::getTimeToLive void   )  const [virtual, inherited]
 

Gets the time each particle will live for.

const String& Ogre::ParticleEmitter::getType void   )  const [inherited]
 

Returns the name of the type of emitter.

Remarks:
This property is useful for determining the type of emitter procedurally so another can be created.

Definition at line 371 of file OgreParticleEmitter.h.

References Ogre::String.

Real Ogre::AreaEmitter::getWidth void   )  const [inherited]
 

Gets the width (local x size) of the emitter.

bool Ogre::AreaEmitter::initDefaults const String mType  )  [protected, inherited]
 

Internal for initializing some defaults and parameters.

Returns:
True if custom parameters need initialising

void Ogre::ParticleEmitter::initDurationRepeat void   )  [protected, inherited]
 

Internal method for initialising the duration & repeat of an emitter.

virtual void Ogre::ParticleEmitter::setAngle const Radian angle  )  [virtual, inherited]
 

Sets the maximum angle away from the emitter direction which particle will be emitted.

Remarks:
Whilst the direction property defines the general direction of emission for particles, this property defines how far the emission angle can deviate away from this base direction. This allows you to create a scatter effect - if set to 0, all particles will be emitted exactly along the emitters direction vector, wheras if you set it to 180 degrees or more, particles will be emitted in a sphere, i.e. in all directions.
Parameters:
degrees Maximum angle which initial particle direction can deviate from the emitter base direction vector.

virtual void Ogre::ParticleEmitter::setColour const ColourValue colourStart,
const ColourValue colourEnd
[virtual, inherited]
 

Sets the range of colours for emitted particles.

Remarks:
Particles have an initial colour on emission which the emitter sets. This method sets the range of this colour. See the alternate version of this method which takes a single colour in order to set a constant colour for all particles. Emitters may choose to randomly assign a colour in this range, or may use some other method to vary the colour.
Parameters:
colourStart The start of the colour range
colourEnd The end of the colour range

virtual void Ogre::ParticleEmitter::setColour const ColourValue colour  )  [virtual, inherited]
 

Sets the initial colour of particles emitted.

Remarks:
Particles have an initial colour on emission which the emitter sets. This method sets this colour. See the alternate version of this method which takes 2 colours in order to establish a range of colours to be assigned to particles.
Parameters:
colour The colour which all particles will be given on emission.

virtual void Ogre::ParticleEmitter::setColourRangeEnd const ColourValue colour  )  [virtual, inherited]
 

Sets the maximum colour of particles to be emitted.

virtual void Ogre::ParticleEmitter::setColourRangeStart const ColourValue colour  )  [virtual, inherited]
 

Sets the minimum colour of particles to be emitted.

void Ogre::AreaEmitter::setDepth Real  Depth  )  [inherited]
 

Sets the depth (local y size) of the emitter.

void Ogre::AreaEmitter::setDirection const Vector3 direction  )  [virtual, inherited]
 

Overloaded to update the trans.

matrix

Reimplemented from Ogre::ParticleEmitter.

virtual void Ogre::ParticleEmitter::setDuration Real  min,
Real  max
[virtual, inherited]
 

Sets the range of random duration for this emitter.

Remarks:
By default emitters run indefinitely (unless you manually disable them). By setting this parameter, you can make an emitter turn off on it's own after a random number of seconds. It will then remain disabled until either setEnabled(true) is called, or if the 'repeatAfter' parameter has been set it will also repeat after a number of seconds.
Also see the alternative version of this method which allows you to set a constant duration.
Parameters:
min The minimum duration in seconds.
max The minimum duration in seconds.

virtual void Ogre::ParticleEmitter::setDuration Real  duration  )  [virtual, inherited]
 

Sets the duration of the emitter.

Remarks:
By default emitters run indefinitely (unless you manually disable them). By setting this parameter, you can make an emitter turn off on it's own after a set number of seconds. It will then remain disabled until either setEnabled(true) is called, or if the 'repeatAfter' parameter has been set it will also repeat after a number of seconds.
Also see the alternative version of this method which allows you to set a min and max duration for a random variable duration.
Parameters:
duration The duration in seconds.

virtual void Ogre::ParticleEmitter::setEmissionRate Real  particlesPerSecond  )  [virtual, inherited]
 

Sets the emission rate for this emitter.

Remarks:
This method tells the emitter how many particles per second should be emitted. The emitter subclass does not have to emit these in a continuous burst - this is a relative parameter and the emitter may choose to emit all of the second's worth of particles every half-second for example. This is controlled by the emitter's getEmissionCount method.
Also, if the ParticleSystem's particle quota is exceeded, not all the particles requested may be actually emitted.
Parameters:
particlesPerSecond The number of particles to be emitted every second.

virtual void Ogre::ParticleEmitter::setEnabled bool  enabled  )  [virtual, inherited]
 

Sets whether or not the emitter is enabled.

Remarks:
You can turn an emitter off completely by setting this parameter to false.

void Ogre::AreaEmitter::setHeight Real  Height  )  [inherited]
 

Sets the height (local y size) of the emitter.

virtual void Ogre::ParticleEmitter::setMaxDuration Real  max  )  [virtual, inherited]
 

Sets the maximum duration of this emitter in seconds (see setDuration for more details).

virtual void Ogre::ParticleEmitter::setMaxParticleVelocity Real  max  )  [virtual, inherited]
 

Returns the maximum particle velocity.

virtual void Ogre::ParticleEmitter::setMaxRepeatDelay Real  max  )  [virtual, inherited]
 

Sets the maximum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual void Ogre::ParticleEmitter::setMaxTimeToLive Real  max  )  [virtual, inherited]
 

Sets the maximum time each particle will live for.

virtual void Ogre::ParticleEmitter::setMinDuration Real  min  )  [virtual, inherited]
 

Sets the minimum duration of this emitter in seconds (see setDuration for more details).

virtual void Ogre::ParticleEmitter::setMinParticleVelocity Real  min  )  [virtual, inherited]
 

Returns the minimum particle velocity.

virtual void Ogre::ParticleEmitter::setMinRepeatDelay Real  min  )  [virtual, inherited]
 

Sets the minimum duration of this emitter in seconds (see setRepeatDelay for more details).

virtual void Ogre::ParticleEmitter::setMinTimeToLive Real  min  )  [virtual, inherited]
 

Sets the minimum time each particle will live for.

virtual bool Ogre::StringInterface::setParameter const String name,
const String value
[virtual, inherited]
 

Generic parameter setting method.

Remarks:
Call this method with the name of a parameter and a string version of the value to set. The implementor will convert the string to a native type internally. If in doubt, check the parameter definition in the list returned from StringInterface::getParameters.
Parameters:
name The name of the parameter to set
value String value. Must be in the right format for the type specified in the parameter definition. See the StringConverter class for more information.
Returns:
true if set was successful, false otherwise (NB no exceptions thrown - tolerant method)

Referenced by Ogre::StringInterface::copyParametersTo().

virtual void Ogre::StringInterface::setParameterList const NameValuePairList paramList  )  [virtual, inherited]
 

Generic multiple parameter setting method.

Remarks:
Call this method with a list of name / value pairs to set. The implementor will convert the string to a native type internally. If in doubt, check the parameter definition in the list returned from StringInterface::getParameters.
Parameters:
paramList Name/value pair list

virtual void Ogre::ParticleEmitter::setParticleVelocity Real  min,
Real  max
[virtual, inherited]
 

Sets the initial velocity range of particles emitted.

Remarks:
This method sets the range of starting speeds for emitted particles. See the alternate version of this method which takes 1 parameter if you want a constant speed. This emitter will randomly choose a speed between the minimum and maximum for each particle.
Parameters:
max The maximum speed in world units per second for the initial particle speed on emission.
min The minimum speed in world units per second for the initial particle speed on emission.

virtual void Ogre::ParticleEmitter::setParticleVelocity Real  speed  )  [virtual, inherited]
 

Sets the initial velocity of particles emitted.

Remarks:
This method sets a constant speed for emitted particles. See the alternate version of this method which takes 2 parameters if you want a variable speed.
Parameters:
speed The initial speed in world units per second which every particle emitted starts with.

virtual void Ogre::ParticleEmitter::setPosition const Vector3 pos  )  [virtual, inherited]
 

Sets the position of this emitter relative to the particle system center.

virtual void Ogre::ParticleEmitter::setRepeatDelay Real  min,
Real  max
[virtual, inherited]
 

Sets the range of random duration for this emitter.

Remarks:
By default emitters run indefinitely (unless you manually disable them). By setting this parameter, you can make an emitter turn off on it's own after a random number of seconds. It will then remain disabled until either setEnabled(true) is called, or if the 'repeatAfter' parameter has been set it will also repeat after a number of seconds.
Also see the alternative version of this method which allows you to set a constant duration.
Parameters:
min The minimum duration in seconds.
max The minimum duration in seconds.

virtual void Ogre::ParticleEmitter::setRepeatDelay Real  duration  )  [virtual, inherited]
 

Sets the time between repeats of the emitter.

Remarks:
By default emitters run indefinitely (unless you manually disable them). However, if you manually disable the emitter (by calling setEnabled(false), or it's duration runs out, it will cease to emit
Also see the alternative version of this method which allows you to set a min and max duration for a random variable duration.
Parameters:
duration The duration in seconds.

void Ogre::AreaEmitter::setSize Real  x,
Real  y,
Real  z
[inherited]
 

Sets the size of the area from which particles are emitted.

Parameters:
x,y,z Individual axis lengths describing the size of the area. The area extends around the center point by half the x, y and z components of this vector. The box is aligned such that it's local Z axis points along it's direction (see setDirection)

void Ogre::AreaEmitter::setSize const Vector3 size  )  [inherited]
 

Sets the size of the area from which particles are emitted.

Parameters:
size Vector describing the size of the area. The area extends around the center point by half the x, y and z components of this vector. The box is aligned such that it's local Z axis points along it's direction (see setDirection)

virtual void Ogre::ParticleEmitter::setStartTime Real  startTime  )  [virtual, inherited]
 

Sets the 'start time' of this emitter.

Remarks:
By default an emitter starts straight away as soon as a ParticleSystem is first created, or also just after it is re-enabled. This parameter allows you to set a time delay so that the emitter does not 'kick in' until later.
Parameters:
startTime The time in seconds from the creation or enabling of the emitter.

virtual void Ogre::ParticleEmitter::setTimeToLive Real  minTtl,
Real  maxTtl
[virtual, inherited]
 

Sets the range of lifetime for particles emitted.

Remarks:
The emitter initialises particles with a time-to-live (TTL), the number of seconds a particle will exist before being destroyed. This method sets a range for the TTL for all particles emitted; the ttl may be randomised between these 2 extremes or will vary some other way depending on the emitter. Note that affectors are able to modify the TTL of particles later.
Also see the alternate version of this method which takes a single TTL in order to set a constant TTL for all particles.
Parameters:
minTtl The minimum number of seconds each particle will live for.
maxTtl The maximum number of seconds each particle will live for.

virtual void Ogre::ParticleEmitter::setTimeToLive Real  ttl  )  [virtual, inherited]
 

Sets the lifetime of all particles emitted.

Remarks:
The emitter initialises particles with a time-to-live (TTL), the number of seconds a particle will exist before being destroyed. This method sets a constant TTL for all particles emitted. Note that affectors are able to modify the TTL of particles later.
Also see the alternate version of this method which takes a min and max TTL in order to have the TTL vary per particle.
Parameters:
ttl The number of seconds each particle will live for.

void Ogre::AreaEmitter::setWidth Real  width  )  [inherited]
 

Sets the width (local x size) of the emitter.


Member Data Documentation

Radian Ogre::ParticleEmitter::mAngle [protected, inherited]
 

Angle around direction which particles may be emitted, internally radians but angleunits for interface.

Definition at line 101 of file OgreParticleEmitter.h.

ColourValue Ogre::ParticleEmitter::mColourRangeEnd [protected, inherited]
 

Initial colour of particles (range end).

Definition at line 113 of file OgreParticleEmitter.h.

ColourValue Ogre::ParticleEmitter::mColourRangeStart [protected, inherited]
 

Initial colour of particles (range start).

Definition at line 111 of file OgreParticleEmitter.h.

Vector3 Ogre::ParticleEmitter::mDirection [protected, inherited]
 

Base direction of the emitter, may not be used by some emitters.

Definition at line 97 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mDurationMax [protected, inherited]
 

Maximum length of time the emitter will run for (0 = forever).

Definition at line 123 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mDurationMin [protected, inherited]
 

Minimum length of time emitter will run for (0 = forever).

Definition at line 121 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mDurationRemain [protected, inherited]
 

Current duration remainder.

Definition at line 125 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mEmissionRate [protected, inherited]
 

Rate in particles per second at which this emitter wishes to emit particles.

Definition at line 93 of file OgreParticleEmitter.h.

bool Ogre::ParticleEmitter::mEnabled [protected, inherited]
 

Whether this emitter is currently enabled (defaults to true).

Definition at line 116 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mMaxSpeed [protected, inherited]
 

Max speed of particles.

Definition at line 105 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mMaxTTL [protected, inherited]
 

Initial time-to-live of particles (max).

Definition at line 109 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mMinSpeed [protected, inherited]
 

Min speed of particles.

Definition at line 103 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mMinTTL [protected, inherited]
 

Initial time-to-live of particles (min).

Definition at line 107 of file OgreParticleEmitter.h.

String Ogre::StringInterface::mParamDictName [protected, inherited]
 

Class name for this instance to be used as a lookup (must be initialised by subclasses).

Definition at line 160 of file OgreStringInterface.h.

ParticleSystem* Ogre::ParticleEmitter::mParent [protected, inherited]
 

Parent particle system.

Definition at line 89 of file OgreParticleEmitter.h.

Vector3 Ogre::ParticleEmitter::mPosition [protected, inherited]
 

Position relative to the center of the ParticleSystem.

Definition at line 91 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mRemainder [protected, inherited]
 

Definition at line 134 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mRepeatDelayMax [protected, inherited]
 

Definition at line 129 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mRepeatDelayMin [protected, inherited]
 

Time between each repeat.

Definition at line 128 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mRepeatDelayRemain [protected, inherited]
 

Repeat delay left.

Definition at line 131 of file OgreParticleEmitter.h.

EmitterCommands::CmdAngle Ogre::ParticleEmitter::msAngleCmd [static, protected, inherited]
 

Definition at line 67 of file OgreParticleEmitter.h.

EmitterCommands::CmdColour Ogre::ParticleEmitter::msColourCmd [static, protected, inherited]
 

Definition at line 68 of file OgreParticleEmitter.h.

EmitterCommands::CmdColourRangeEnd Ogre::ParticleEmitter::msColourRangeEndCmd [static, protected, inherited]
 

Definition at line 70 of file OgreParticleEmitter.h.

EmitterCommands::CmdColourRangeStart Ogre::ParticleEmitter::msColourRangeStartCmd [static, protected, inherited]
 

Definition at line 69 of file OgreParticleEmitter.h.

CmdDepth Ogre::AreaEmitter::msDepthCmd [static, protected, inherited]
 

Definition at line 134 of file OgreAreaEmitter.h.

ParamDictionaryMap Ogre::StringInterface::msDictionary [static, protected, inherited]
 

Dictionary of parameters.

Definition at line 157 of file OgreStringInterface.h.

EmitterCommands::CmdDirection Ogre::ParticleEmitter::msDirectionCmd [static, protected, inherited]
 

Definition at line 71 of file OgreParticleEmitter.h.

EmitterCommands::CmdDuration Ogre::ParticleEmitter::msDurationCmd [static, protected, inherited]
 

Definition at line 80 of file OgreParticleEmitter.h.

EmitterCommands::CmdEmissionRate Ogre::ParticleEmitter::msEmissionRateCmd [static, protected, inherited]
 

Definition at line 72 of file OgreParticleEmitter.h.

CmdHeight Ogre::AreaEmitter::msHeightCmd [static, protected, inherited]
 

Definition at line 133 of file OgreAreaEmitter.h.

Vector3 Ogre::AreaEmitter::mSize [protected, inherited]
 

Size of the area.

Definition at line 119 of file OgreAreaEmitter.h.

EmitterCommands::CmdMaxDuration Ogre::ParticleEmitter::msMaxDurationCmd [static, protected, inherited]
 

Definition at line 82 of file OgreParticleEmitter.h.

EmitterCommands::CmdMaxRepeatDelay Ogre::ParticleEmitter::msMaxRepeatDelayCmd [static, protected, inherited]
 

Definition at line 85 of file OgreParticleEmitter.h.

EmitterCommands::CmdMaxTTL Ogre::ParticleEmitter::msMaxTTLCmd [static, protected, inherited]
 

Definition at line 73 of file OgreParticleEmitter.h.

EmitterCommands::CmdMaxVelocity Ogre::ParticleEmitter::msMaxVelocityCmd [static, protected, inherited]
 

Definition at line 74 of file OgreParticleEmitter.h.

EmitterCommands::CmdMinDuration Ogre::ParticleEmitter::msMinDurationCmd [static, protected, inherited]
 

Definition at line 81 of file OgreParticleEmitter.h.

EmitterCommands::CmdMinRepeatDelay Ogre::ParticleEmitter::msMinRepeatDelayCmd [static, protected, inherited]
 

Definition at line 84 of file OgreParticleEmitter.h.

EmitterCommands::CmdMinTTL Ogre::ParticleEmitter::msMinTTLCmd [static, protected, inherited]
 

Definition at line 75 of file OgreParticleEmitter.h.

EmitterCommands::CmdMinVelocity Ogre::ParticleEmitter::msMinVelocityCmd [static, protected, inherited]
 

Definition at line 76 of file OgreParticleEmitter.h.

EmitterCommands::CmdPosition Ogre::ParticleEmitter::msPositionCmd [static, protected, inherited]
 

Definition at line 77 of file OgreParticleEmitter.h.

EmitterCommands::CmdRepeatDelay Ogre::ParticleEmitter::msRepeatDelayCmd [static, protected, inherited]
 

Definition at line 83 of file OgreParticleEmitter.h.

Real Ogre::ParticleEmitter::mStartTime [protected, inherited]
 

Start time (in seconds from start of first call to ParticleSystem to update).

Definition at line 119 of file OgreParticleEmitter.h.

EmitterCommands::CmdTTL Ogre::ParticleEmitter::msTTLCmd [static, protected, inherited]
 

Definition at line 78 of file OgreParticleEmitter.h.

EmitterCommands::CmdVelocity Ogre::ParticleEmitter::msVelocityCmd [static, protected, inherited]
 

Definition at line 79 of file OgreParticleEmitter.h.

CmdWidth Ogre::AreaEmitter::msWidthCmd [static, protected, inherited]
 

Command objects.

Definition at line 132 of file OgreAreaEmitter.h.

String Ogre::ParticleEmitter::mType [protected, inherited]
 

Name of the type of emitter, MUST be initialised by subclasses.

Definition at line 95 of file OgreParticleEmitter.h.

Vector3 Ogre::ParticleEmitter::mUp [protected, inherited]
 

Definition at line 99 of file OgreParticleEmitter.h.

Vector3 Ogre::AreaEmitter::mXRange [protected, inherited]
 

Local axes, not normalised, their magnitude reflects area size.

Definition at line 122 of file OgreAreaEmitter.h.

Vector3 Ogre::AreaEmitter::mYRange [protected, inherited]
 

Local axes, not normalised, their magnitude reflects area size.

Definition at line 122 of file OgreAreaEmitter.h.

Vector3 Ogre::AreaEmitter::mZRange [protected, inherited]
 

Local axes, not normalised, their magnitude reflects area size.

Definition at line 122 of file OgreAreaEmitter.h.


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

Copyright © 2000-2005 by The OGRE Team
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Feb 12 13:07:07 2006