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

# Ogre::AreaEmitter Class Reference

Particle emitter which emits particles randomly from points inside an area (box, sphere, ellipsoid whatever subclasses choose to be). More...

`#include <OgreAreaEmitter.h>`

Inheritance diagram for Ogre::AreaEmitter:

[legend]
List of all members.

## Public Methods

| AreaEmitter ()
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 Vector3 & | getPosition (void) const
| Returns the position of this emitter relative to thte center of the particle system.
virtual const Vector3 & | getDirection (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 Radian & | getAngle (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 ColourValue & | getColour (void) const
| Gets the colour of particles to be emitted.
virtual const ColourValue & | getColourRangeStart (void) const
| Gets the minimum colour of particles to be emitted.
virtual const ColourValue & | getColourRangeEnd (void) const
| Gets the maximum colour of particles to be emitted.
virtual void | _initParticle (Particle *pParticle)
| Initialises a particle based on the emitter's approach and parameters.
String | getType (void)
| 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).
ParamDictionary * | getParamDictionary (void)
| Retrieves the parameter dictionary for this class.
const ParamDictionary * | getParamDictionary (void) const
const ParameterList & | getParameters (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 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 Methods

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 Methods

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.
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 an area (box, sphere, ellipsoid whatever subclasses choose to be).

Remarks:
  This is an empty superclass and needs to be subclassed. Basic particle emitter emits particles from/in an (unspecified) 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 44 of file OgreAreaEmitter.h.

## Constructor & Destructor Documentation

Ogre::AreaEmitter::AreaEmitter | ( |  | ) |

| Definition at line 70 of file OgreAreaEmitter.h.

## Member Function Documentation

unsigned short Ogre::AreaEmitter::_getEmissionCount | ( | Real | timeElapsed | ) | `[virtual]`

| See ParticleEmitter. Implements Ogre::ParticleEmitter. Definition at line 75 of file OgreAreaEmitter.cpp. References Ogre::ParticleEmitter::genConstantEmissionCount(), and Ogre::Real.

virtual void Ogre::ParticleEmitter::_initParticle | ( | Particle * | pParticle | ) | `[virtual, inherited]`

Initialises a particle based on the emitter's approach and parameters.

Remarks:
  See the _getEmissionCount method for details of why there is a separation between 'requested' emissions and actual initialised particles.

Parameters:

  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 in Ogre::BoxEmitter, Ogre::CylinderEmitter, Ogre::EllipsoidEmitter, Ogre::HollowEllipsoidEmitter, Ogre::PointEmitter, and Ogre::RingEmitter.

Definition at line 358 of file OgreParticleEmitter.h.

References Ogre::Billboard::resetDimensions().

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.

Definition at line 273 of file OgreParticleEmitter.cpp.

References Ogre::ParamDictionary::addParameter(), Ogre::StringInterface::getParamDictionary(), Ogre::ParticleEmitter::msAngleCmd, Ogre::ParticleEmitter::msColourCmd, Ogre::ParticleEmitter::msColourRangeEndCmd, Ogre::ParticleEmitter::msColourRangeStartCmd, Ogre::ParticleEmitter::msDirectionCmd, Ogre::ParticleEmitter::msDurationCmd, Ogre::ParticleEmitter::msEmissionRateCmd, Ogre::ParticleEmitter::msMaxDurationCmd, Ogre::ParticleEmitter::msMaxRepeatDelayCmd, Ogre::ParticleEmitter::msMaxTTLCmd, Ogre::ParticleEmitter::msMaxVelocityCmd, Ogre::ParticleEmitter::msMinDurationCmd, Ogre::ParticleEmitter::msMinRepeatDelayCmd, Ogre::ParticleEmitter::msMinTTLCmd, Ogre::ParticleEmitter::msMinVelocityCmd, Ogre::ParticleEmitter::msPositionCmd, Ogre::ParticleEmitter::msRepeatDelayCmd, Ogre::ParticleEmitter::msTTLCmd, Ogre::ParticleEmitter::msVelocityCmd, Ogre::PT_COLOURVALUE, Ogre::PT_REAL, and Ogre::PT_VECTOR3.

Referenced by initDefaults(), and Ogre::PointEmitter::PointEmitter().

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. Definition at line 53 of file OgreStringInterface.cpp. References Ogre::StringInterface::msDictionary.

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 293 of file OgreStringInterface.h.

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

Referenced by Ogre::GuiElement::clone(), Ogre::GuiElement::copyFromTemplate(), Ogre::GuiContainer::copyFromTemplate(), and Ogre::ParticleSystem::operator=().

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 169 of file OgreStringInterface.h.

References Ogre::String.

Referenced by Ogre::ExternalTextureSource::addBaseParams(), Ogre::BorderButtonGuiElement::BorderButtonGuiElement(), Ogre::BorderPanelGuiElement::BorderPanelGuiElement(), Ogre::ButtonGuiElement::ButtonGuiElement(), Ogre::CgProgram::CgProgram(), Ogre::ColourFaderAffector::ColourFaderAffector(), Ogre::ColourFaderAffector2::ColourFaderAffector2(), Ogre::ColourImageAffector::ColourImageAffector(), Ogre::ColourInterpolatorAffector::ColourInterpolatorAffector(), Ogre::CursorGuiElement::CursorGuiElement(), Ogre::D3D9HLSLProgram::D3D9HLSLProgram(), Ogre::GLSLProgram::GLSLProgram(), initDefaults(), Ogre::ParticleSystem::initParameters(), Ogre::LinearForceAffector::LinearForceAffector(), Ogre::ListGuiElement::ListGuiElement(), Ogre::PanelGuiElement::PanelGuiElement(), Ogre::PointEmitter::PointEmitter(), Ogre::PopupMenuGuiElement::PopupMenuGuiElement(), Ogre::RotationAffector::RotationAffector(), Ogre::ScaleAffector::ScaleAffector(), Ogre::ScrollBarGuiElement::ScrollBarGuiElement(), Ogre::TextAreaGuiElement::TextAreaGuiElement(), Ogre::TextBoxGuiElement::TextBoxGuiElement(), and Ogre::TTYGuiElement::TTYGuiElement().

void Ogre::AreaEmitter::genAreaAxes | ( | void |  | ) | `[protected]`

| Internal method for generating the area axes. Definition at line 138 of file OgreAreaEmitter.cpp. References Ogre::Vector3::crossProduct(), Ogre::ParticleEmitter::mDirection, mSize, Ogre::ParticleEmitter::mUp, mXRange, mYRange, mZRange, Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z. Referenced by setDepth(), setDirection(), setHeight(), setSize(), and setWidth().

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

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

Definition at line 207 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mDurationRemain, Ogre::ParticleEmitter::mEmissionRate, Ogre::ParticleEmitter::mRemainder, Ogre::ParticleEmitter::mRepeatDelayRemain, Ogre::ParticleEmitter::mStartTime, Ogre::Real, and Ogre::ParticleEmitter::setEnabled().

Referenced by Ogre::PointEmitter::_getEmissionCount(), and _getEmissionCount().

void Ogre::ParticleEmitter::genEmissionColour | ( | ColourValue & | destColour | ) | `[protected, virtual, inherited]`

Internal utility method for generating a colour for a particle.

Definition at line 256 of file OgreParticleEmitter.cpp.

References Ogre::ColourValue::a, Ogre::ColourValue::b, Ogre::ColourValue::g, Ogre::ParticleEmitter::mColourRangeEnd, Ogre::ParticleEmitter::mColourRangeStart, and Ogre::ColourValue::r.

Referenced by Ogre::RingEmitter::_initParticle(), Ogre::PointEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), and Ogre::BoxEmitter::_initParticle().

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)

Definition at line 159 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mAngle, Ogre::ParticleEmitter::mDirection, Ogre::ParticleEmitter::mUp, and Ogre::Vector3::randomDeviant().

Referenced by Ogre::RingEmitter::_initParticle(), Ogre::PointEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), and Ogre::BoxEmitter::_initParticle().

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

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

Definition at line 195 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxTTL, Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

Referenced by Ogre::RingEmitter::_initParticle(), Ogre::PointEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), and Ogre::BoxEmitter::_initParticle().

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.

Definition at line 180 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxSpeed, Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

Referenced by Ogre::RingEmitter::_initParticle(), Ogre::PointEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), and Ogre::BoxEmitter::_initParticle().

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. Definition at line 111 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mAngle.

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

| Gets the colour of particles to be emitted. Definition at line 405 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mColourRangeStart.

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

| Gets the maximum colour of particles to be emitted. Definition at line 415 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mColourRangeEnd.

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

| Gets the minimum colour of particles to be emitted. Definition at line 410 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mColourRangeStart.

Real Ogre::AreaEmitter::getDepth | ( | void |  | ) | const

| Gets the depth (local y size) of the emitter. Definition at line 133 of file OgreAreaEmitter.cpp. References mSize, Ogre::Real, and Ogre::Vector3::z. Referenced by Ogre::AreaEmitter::CmdDepth::doGet().

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

| Returns the base direction of the emitter. Definition at line 100 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mDirection.

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

| Gets the duration of the emitter from when it is created or re-enabled. Definition at line 458 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mDurationMin, and Ogre::Real.

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

| Returns the emission rate set for this emitter. Definition at line 132 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mEmissionRate, and Ogre::Real.

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

| Gets the flag indicating if this emitter is enabled or not. Definition at line 437 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mEnabled.

Real Ogre::AreaEmitter::getHeight | ( | void |  | ) | const

| Gets the height (local y size) of the emitter. Definition at line 122 of file OgreAreaEmitter.cpp. References mSize, Ogre::Real, and Ogre::Vector3::y. Referenced by Ogre::AreaEmitter::CmdHeight::doGet().

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

| Gets the maximum duration of this emitter in seconds (see setDuration for more details). Definition at line 544 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mDurationMax, and Ogre::Real.

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

| Returns the maximum particle velocity. Definition at line 365 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMaxSpeed, and Ogre::Real.

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

| Gets the maximum duration of this emitter in seconds (see setRepeatDelay for more details). Definition at line 554 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mRepeatDelayMax, and Ogre::Real.

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

| Gets the maximum time each particle will live for. Definition at line 390 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMaxTTL, and Ogre::Real.

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

| Gets the minimum duration of this emitter in seconds (see setDuration for more details). Definition at line 539 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mDurationMin, and Ogre::Real.

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

| Returns the minimum particle velocity. Definition at line 360 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

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

| Gets the minimum duration of this emitter in seconds (see setRepeatDelay for more details). Definition at line 549 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mRepeatDelayMin, and Ogre::Real.

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

| Gets the minimum time each particle will live for. Definition at line 385 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

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

| Definition at line 206 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 193 of file OgreStringInterface.h.

Referenced by Ogre::TTYGuiElement::addBaseParameters(), Ogre::TextBoxGuiElement::addBaseParameters(), Ogre::TextAreaGuiElement::addBaseParameters(), Ogre::ScrollBarGuiElement::addBaseParameters(), Ogre::PopupMenuGuiElement::addBaseParameters(), Ogre::ParticleEmitter::addBaseParameters(), Ogre::PanelGuiElement::addBaseParameters(), Ogre::ListGuiElement::addBaseParameters(), Ogre::GuiElement::addBaseParameters(), Ogre::CursorGuiElement::addBaseParameters(), Ogre::ButtonGuiElement::addBaseParameters(), Ogre::BorderPanelGuiElement::addBaseParameters(), Ogre::BorderButtonGuiElement::addBaseParameters(), Ogre::ExternalTextureSource::addBaseParams(), Ogre::CgProgram::CgProgram(), Ogre::ColourFaderAffector::ColourFaderAffector(), Ogre::ColourFaderAffector2::ColourFaderAffector2(), Ogre::ColourImageAffector::ColourImageAffector(), Ogre::ColourInterpolatorAffector::ColourInterpolatorAffector(), Ogre::D3D9HLSLProgram::D3D9HLSLProgram(), Ogre::GLSLProgram::GLSLProgram(), Ogre::HollowEllipsoidEmitter::HollowEllipsoidEmitter(), initDefaults(), Ogre::ParticleSystem::initParameters(), Ogre::LinearForceAffector::LinearForceAffector(), Ogre::RingEmitter::RingEmitter(), Ogre::RotationAffector::RotationAffector(), Ogre::ScaleAffector::ScaleAffector(), and Ogre::StringInterface::setParameter().

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 262 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.

Definition at line 224 of file OgreStringInterface.h.

References Ogre::ParamDictionary::getParameters(), and Ogre::ParameterList.

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

| Returns the initial velocity of particles emitted. Definition at line 355 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

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

| Returns the position of this emitter relative to thte center of the particle system. Definition at line 86 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mPosition.

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

| Gets the duration of the emitter from when it is created or re-enabled. Definition at line 515 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mRepeatDelayMin, and Ogre::Real.

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

| Gets the start time of the emitter. Definition at line 448 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mStartTime, and Ogre::Real.

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

| Gets the time each particle will live for. Definition at line 380 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

String Ogre::ParticleEmitter::getType | ( | void |  | ) | `[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 369 of file OgreParticleEmitter.h.

References Ogre::String.

Referenced by Ogre::ParticleSystemManager::_destroyEmitter(), Ogre::ParticleSystem::operator=(), and Ogre::ParticleSystemManager::parseEmitterAttrib().

Real Ogre::AreaEmitter::getWidth | ( | void |  | ) | const

| Gets the width (local x size) of the emitter. Definition at line 111 of file OgreAreaEmitter.cpp. References mSize, Ogre::Real, and Ogre::Vector3::x. Referenced by Ogre::AreaEmitter::CmdWidth::doGet().

bool Ogre::AreaEmitter::initDefaults | ( | const String & | mType | ) | `[protected]`

Internal for initializing some defaults and parameters.

Returns:
  True if custom parameters need initialising

Definition at line 41 of file OgreAreaEmitter.cpp.

References Ogre::ParticleEmitter::addBaseParameters(), Ogre::ParamDictionary::addParameter(), Ogre::StringInterface::createParamDictionary(), Ogre::StringInterface::getParamDictionary(), Ogre::ParticleEmitter::mDirection, msDepthCmd, msHeightCmd, msWidthCmd, Ogre::ParticleEmitter::mType, Ogre::ParticleEmitter::mUp, Ogre::PT_REAL, setSize(), and Ogre::String.

Referenced by Ogre::BoxEmitter::BoxEmitter(), Ogre::CylinderEmitter::CylinderEmitter(), Ogre::EllipsoidEmitter::EllipsoidEmitter(), Ogre::HollowEllipsoidEmitter::HollowEllipsoidEmitter(), and Ogre::RingEmitter::RingEmitter().

void Ogre::ParticleEmitter::initDurationRepeat | ( | void |  | ) | `[protected, inherited]`

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

Definition at line 482 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mDurationMax, Ogre::ParticleEmitter::mDurationMin, Ogre::ParticleEmitter::mDurationRemain, Ogre::ParticleEmitter::mRepeatDelayMax, Ogre::ParticleEmitter::mRepeatDelayMin, and Ogre::ParticleEmitter::mRepeatDelayRemain.

Referenced by Ogre::ParticleEmitter::setDuration(), Ogre::ParticleEmitter::setEnabled(), Ogre::ParticleEmitter::setMaxDuration(), Ogre::ParticleEmitter::setMaxRepeatDelay(), Ogre::ParticleEmitter::setMinDuration(), Ogre::ParticleEmitter::setMinRepeatDelay(), and Ogre::ParticleEmitter::setRepeatDelay().

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.

Definition at line 105 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mAngle.

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

Definition at line 153 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mColourRangeEnd, and Ogre::ParticleEmitter::mColourRangeStart.

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.

Definition at line 148 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mColourRangeEnd, and Ogre::ParticleEmitter::mColourRangeStart.

void Ogre::ParticleEmitter::setColourRangeEnd | ( | const ColourValue & | colour | ) | `[virtual, inherited]`

| Sets the maximum colour of particles to be emitted. Definition at line 425 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mColourRangeEnd.

void Ogre::ParticleEmitter::setColourRangeStart | ( | const ColourValue & | colour | ) | `[virtual, inherited]`

| Sets the minimum colour of particles to be emitted. Definition at line 420 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mColourRangeStart.

void Ogre::AreaEmitter::setDepth | ( | Real | Depth | ) |

| Sets the depth (local y size) of the emitter. Definition at line 127 of file OgreAreaEmitter.cpp. References genAreaAxes(), mSize, Ogre::Real, and Ogre::Vector3::z.

void Ogre::AreaEmitter::setDirection | ( | const Vector3 & | direction | ) | `[virtual]`

| Overloaded to update the trans. matrix Reimplemented from Ogre::ParticleEmitter. Definition at line 81 of file OgreAreaEmitter.cpp. References genAreaAxes().

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.

Definition at line 463 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mDurationMax, Ogre::ParticleEmitter::mDurationMin, and Ogre::Real.

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.

Definition at line 453 of file OgreParticleEmitter.cpp.

References Ogre::Real.

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.

Definition at line 127 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mEmissionRate, and Ogre::Real.

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.

Definition at line 430 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::initDurationRepeat(), and Ogre::ParticleEmitter::mEnabled.

Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), and Ogre::ParticleEmitter::setStartTime().

void Ogre::AreaEmitter::setHeight | ( | Real | Height | ) |

| Sets the height (local y size) of the emitter. Definition at line 116 of file OgreAreaEmitter.cpp. References genAreaAxes(), mSize, Ogre::Real, and Ogre::Vector3::y.

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

| Sets the maximum duration of this emitter in seconds (see setDuration for more details). Definition at line 476 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mDurationMax, and Ogre::Real.

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

| Returns the maximum particle velocity. Definition at line 375 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMaxSpeed, and Ogre::Real.

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

| Sets the maximum duration of this emitter in seconds (see setRepeatDelay for more details). Definition at line 533 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mRepeatDelayMax, and Ogre::Real.

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

| Sets the maximum time each particle will live for. Definition at line 400 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMaxTTL, and Ogre::Real.

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

| Sets the minimum duration of this emitter in seconds (see setDuration for more details). Definition at line 470 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mDurationMin, and Ogre::Real.

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

| Returns the minimum particle velocity. Definition at line 370 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

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

| Sets the minimum duration of this emitter in seconds (see setRepeatDelay for more details). Definition at line 527 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mRepeatDelayMin, and Ogre::Real.

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

| Sets the minimum time each particle will live for. Definition at line 395 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

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)

Definition at line 33 of file OgreStringInterface.cpp.

References Ogre::ParamCommand::doSet(), Ogre::ParamDictionary::getParamCommand(), Ogre::StringInterface::getParamDictionary(), and Ogre::String.

Referenced by Ogre::StringInterface::copyParametersTo(), Ogre::Profiler::createContainer(), Ogre::Profiler::createTextArea(), Ogre::MaterialSerializer::finishProgramDefinition(), Ogre::ParticleSystemManager::parseAffectorAttrib(), Ogre::ParticleSystemManager::parseAttrib(), Ogre::OverlayManager::parseElementAttrib(), and Ogre::ParticleSystemManager::parseEmitterAttrib().

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.

Definition at line 121 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxSpeed, Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

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.

Definition at line 116 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxSpeed, Ogre::ParticleEmitter::mMinSpeed, and Ogre::Real.

void Ogre::ParticleEmitter::setPosition | ( | const Vector3 & | pos | ) | `[virtual, inherited]`

| Sets the position of this emitter relative to the particle system center. Definition at line 81 of file OgreParticleEmitter.cpp. References Ogre::ParticleEmitter::mPosition.

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.

Definition at line 520 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::mRepeatDelayMax, Ogre::ParticleEmitter::mRepeatDelayMin, and Ogre::Real.

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.

Definition at line 510 of file OgreParticleEmitter.cpp.

References Ogre::Real.

void Ogre::AreaEmitter::setSize | ( | Real | x,
|  | Real | y,
|  | Real | z
| ) |

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)

Definition at line 97 of file OgreAreaEmitter.cpp.

References genAreaAxes(), mSize, Ogre::Real, Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.

void Ogre::AreaEmitter::setSize | ( | const Vector3 & | size | ) |

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)

Definition at line 91 of file OgreAreaEmitter.cpp.

References genAreaAxes(), and mSize.

Referenced by initDefaults().

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.

Definition at line 442 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mStartTime, Ogre::Real, and Ogre::ParticleEmitter::setEnabled().

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.

Definition at line 142 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxTTL, Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

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.

Definition at line 137 of file OgreParticleEmitter.cpp.

References Ogre::ParticleEmitter::mMaxTTL, Ogre::ParticleEmitter::mMinTTL, and Ogre::Real.

void Ogre::AreaEmitter::setWidth | ( | Real | width | ) |

| Sets the width (local x size) of the emitter. Definition at line 105 of file OgreAreaEmitter.cpp. References genAreaAxes(), mSize, Ogre::Real, and Ogre::Vector3::x.

## 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 99 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionDirection(), Ogre::ParticleEmitter::getAngle(), Ogre::ParticleEmitter::ParticleEmitter(), and Ogre::ParticleEmitter::setAngle().

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

| Initial colour of particles (range end). Definition at line 111 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionColour(), Ogre::ParticleEmitter::getColourRangeEnd(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setColour(), and Ogre::ParticleEmitter::setColourRangeEnd().

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

| Initial colour of particles (range start). Definition at line 109 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionColour(), Ogre::ParticleEmitter::getColour(), Ogre::ParticleEmitter::getColourRangeStart(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setColour(), and Ogre::ParticleEmitter::setColourRangeStart().

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

| Base direction of the emitter, may not be used by some emitters. Definition at line 95 of file OgreParticleEmitter.h. Referenced by genAreaAxes(), Ogre::ParticleEmitter::genEmissionDirection(), Ogre::ParticleEmitter::getDirection(), initDefaults(), and Ogre::ParticleEmitter::setDirection().

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

| Maximum length of time the emitter will run for (0 = forever). Definition at line 121 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::getMaxDuration(), Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::setDuration(), and Ogre::ParticleEmitter::setMaxDuration().

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

| Minimum length of time emitter will run for (0 = forever). Definition at line 119 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::getDuration(), Ogre::ParticleEmitter::getMinDuration(), Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::setDuration(), and Ogre::ParticleEmitter::setMinDuration().

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

| Current duration remainder. Definition at line 123 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), and Ogre::ParticleEmitter::initDurationRepeat().

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

| Rate in particles per second at which this emitter wishes to emit particles. Definition at line 91 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), Ogre::ParticleEmitter::getEmissionRate(), Ogre::ParticleEmitter::ParticleEmitter(), and Ogre::ParticleEmitter::setEmissionRate().

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

| Whether this emitter is currently enabled (defaults to true). Definition at line 114 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::getEnabled(), Ogre::ParticleEmitter::ParticleEmitter(), and Ogre::ParticleEmitter::setEnabled().

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

| Max speed of particles. Definition at line 103 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionVelocity(), Ogre::ParticleEmitter::getMaxParticleVelocity(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setMaxParticleVelocity(), and Ogre::ParticleEmitter::setParticleVelocity().

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

| Initial time-to-live of particles (max). Definition at line 107 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionTTL(), Ogre::ParticleEmitter::getMaxTimeToLive(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setMaxTimeToLive(), and Ogre::ParticleEmitter::setTimeToLive().

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

| Min speed of particles. Definition at line 101 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionVelocity(), Ogre::ParticleEmitter::getMinParticleVelocity(), Ogre::ParticleEmitter::getParticleVelocity(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setMinParticleVelocity(), and Ogre::ParticleEmitter::setParticleVelocity().

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

| Initial time-to-live of particles (min). Definition at line 105 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genEmissionTTL(), Ogre::ParticleEmitter::getMinTimeToLive(), Ogre::ParticleEmitter::getTimeToLive(), Ogre::ParticleEmitter::ParticleEmitter(), Ogre::ParticleEmitter::setMinTimeToLive(), and Ogre::ParticleEmitter::setTimeToLive().

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 157 of file OgreStringInterface.h.

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

Position relative to the center of the ParticleSystem.

Definition at line 89 of file OgreParticleEmitter.h.

Referenced by Ogre::RingEmitter::_initParticle(), Ogre::PointEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), Ogre::BoxEmitter::_initParticle(), Ogre::ParticleEmitter::getPosition(), Ogre::ParticleEmitter::ParticleEmitter(), and Ogre::ParticleEmitter::setPosition().

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

| Definition at line 132 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), and Ogre::ParticleEmitter::ParticleEmitter().

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

| Definition at line 127 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::getMaxRepeatDelay(), Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::setMaxRepeatDelay(), and Ogre::ParticleEmitter::setRepeatDelay().

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

| Time between each repeat. Definition at line 126 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::getMinRepeatDelay(), Ogre::ParticleEmitter::getRepeatDelay(), Ogre::ParticleEmitter::initDurationRepeat(), Ogre::ParticleEmitter::setMinRepeatDelay(), and Ogre::ParticleEmitter::setRepeatDelay().

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

| Repeat delay left. Definition at line 129 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), and Ogre::ParticleEmitter::initDurationRepeat().

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

| Definition at line 32 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 33 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 35 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 34 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 38 of file OgreAreaEmitter.cpp. Referenced by initDefaults().

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

| Dictionary of parameters. Definition at line 30 of file OgreStringInterface.cpp. Referenced by Ogre::StringInterface::cleanupDictionary().

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

| Definition at line 36 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 45 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 37 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 37 of file OgreAreaEmitter.cpp. Referenced by initDefaults().

Vector3 Ogre::AreaEmitter::mSize`[protected]`

| Size of the area. Definition at line 119 of file OgreAreaEmitter.h. Referenced by genAreaAxes(), getDepth(), getHeight(), getWidth(), setDepth(), setHeight(), setSize(), and setWidth().

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

| Definition at line 47 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 50 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 38 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 39 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 46 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 49 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 40 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 41 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 42 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 48 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Start time (in seconds from start of first call to ParticleSystem to update). Definition at line 117 of file OgreParticleEmitter.h. Referenced by Ogre::ParticleEmitter::genConstantEmissionCount(), Ogre::ParticleEmitter::getStartTime(), and Ogre::ParticleEmitter::setStartTime().

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

| Definition at line 43 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Definition at line 44 of file OgreParticleEmitter.cpp. Referenced by Ogre::ParticleEmitter::addBaseParameters().

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

| Command objects. Definition at line 36 of file OgreAreaEmitter.cpp. Referenced by initDefaults().

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

| Name of the type of emitter, MUST be initialised by subclasses. Definition at line 93 of file OgreParticleEmitter.h. Referenced by initDefaults(), and Ogre::PointEmitter::PointEmitter().

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

| Definition at line 97 of file OgreParticleEmitter.h. Referenced by genAreaAxes(), Ogre::ParticleEmitter::genEmissionDirection(), initDefaults(), and Ogre::ParticleEmitter::setDirection().

Vector3 Ogre::AreaEmitter::mXRange`[protected]`

| Local axes, not normalised, their magnitude reflects area size. Definition at line 122 of file OgreAreaEmitter.h. Referenced by Ogre::RingEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), Ogre::BoxEmitter::_initParticle(), and genAreaAxes().

Vector3 Ogre::AreaEmitter::mYRange`[protected]`

| Local axes, not normalised, their magnitude reflects area size. Definition at line 122 of file OgreAreaEmitter.h. Referenced by Ogre::RingEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), Ogre::BoxEmitter::_initParticle(), and genAreaAxes().

Vector3 Ogre::AreaEmitter::mZRange`[protected]`

| Local axes, not normalised, their magnitude reflects area size. Definition at line 122 of file OgreAreaEmitter.h. Referenced by Ogre::RingEmitter::_initParticle(), Ogre::HollowEllipsoidEmitter::_initParticle(), Ogre::EllipsoidEmitter::_initParticle(), Ogre::CylinderEmitter::_initParticle(), Ogre::BoxEmitter::_initParticle(), and genAreaAxes().

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

- OgreAreaEmitter.h
- OgreAreaEmitter.cpp

Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:49:01 2004