OGRE-Next 4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
Class defining particle system based special effects. More...
#include <OgreParticleSystem.h>
Classes | |
class | CmdCull |
Command object for cull_each (see ParamCommand). More... | |
class | CmdEmittedEmitterQuota |
Command object for emittedEmitterQuota (see ParamCommand). More... | |
class | CmdHeight |
Command object for particle_height (see ParamCommand). More... | |
class | CmdIterationInterval |
Command object for iteration interval(see ParamCommand). More... | |
class | CmdLocalSpace |
Command object for local space (see ParamCommand). More... | |
class | CmdMaterial |
Command object for material (see ParamCommand). More... | |
class | CmdNonvisibleTimeout |
Command object for nonvisible timeout (see ParamCommand). More... | |
class | CmdQuota |
Command object for quota (see ParamCommand). More... | |
class | CmdRenderer |
Command object for renderer (see ParamCommand). More... | |
class | CmdSorted |
Command object for sorting (see ParamCommand). More... | |
class | CmdWidth |
Command object for particle_width (see ParamCommand). More... | |
Public Member Functions | |
ParticleSystem (IdType id, ObjectMemoryManager *objectMemoryManager, SceneManager *manager, const String &resourceGroupName, uint8 renderQueueId=110u, bool bCreateRenderer=true) | |
Creates a particle system with no emitters or affectors. | |
virtual | ~ParticleSystem () override |
ParticleIterator | _getIterator () |
Returns an iterator for stepping through all particles in this system. | |
void | _notifyAttached (Node *parent) override |
Overridden from MovableObject. | |
void | _notifyOrigin (const String &origin) |
Notify this particle system of it's origin. | |
virtual void | _notifyParticleResized () |
Internal callback used by Particles to notify their parent that they have been resized. | |
virtual void | _notifyParticleRotated () |
Internal callback used by Particles to notify their parent that they have been rotated. | |
void | _update (Real timeElapsed) |
Updates the particles in the system based on time elapsed. | |
void | _updateBounds () |
Internal method for updating the bounds of the particle system. | |
void | _updateRenderQueue (RenderQueue *queue, Camera *camera, const Camera *lodCamera) override |
Overridden from MovableObject. | |
ParticleAffector * | addAffector (const String &affectorType) |
Adds an affector to this particle system. | |
ParticleEmitter * | addEmitter (const String &emitterType) |
Adds an emitter to this particle system. | |
void | clear () |
Empties this set of all particles. | |
Particle * | createEmitterParticle (const String &emitterName) |
Manually add an emitter particle to the system. | |
Particle * | createParticle () |
Manually add a particle to the system. | |
void | fastForward (Real time, Real interval=Real(0.1)) |
Fast-forwards this system by the required number of seconds. | |
ParticleAffector * | getAffector (unsigned short index) const |
Retrieves an affector by it's index (zero-based). | |
virtual bool | getCullIndividually () const |
Returns whether or not particles in this are tested individually for culling. | |
virtual Real | getDefaultHeight () const |
See setDefaultDimensions - this gets 1 component individually. | |
virtual Real | getDefaultWidth () const |
See setDefaultDimensions - this gets 1 component individually. | |
size_t | getEmittedEmitterQuota () const |
Returns the maximum number of emitted emitters this system is allowed to have active at once. | |
ParticleEmitter * | getEmitter (unsigned short index) const |
Retrieves an emitter by it's index (zero-based). | |
bool | getEmitting () const |
Returns true if the particle system emitting flag is turned on. | |
Real | getIterationInterval () const |
Gets a 'iteration interval' on this particle system. | |
bool | getKeepParticlesInLocalSpace () const |
Gets whether particles (and any affector effects) remain relative to the node the particle system is attached to. | |
virtual const String & | getMaterialName () const |
Sets the name of the material to be used for this billboard set. | |
const String & | getMovableType () const override |
Overridden from MovableObject. | |
Real | getNonVisibleUpdateTimeout () const |
Gets when the particle system should stop updating after it hasn't been visible for a while. | |
unsigned short | getNumAffectors () const |
Returns the number of affectors for this particle system. | |
unsigned short | getNumEmitters () const |
Returns the number of emitters for this particle system. | |
size_t | getNumParticles () const |
Gets the number of individual particles in the system right now. | |
const String & | getOrigin () const |
Get the origin of this particle system, e.g. | |
Particle * | getParticle (size_t index) |
Retrieve a particle from the system for manual tweaking. | |
SceneNode * | getParticleEmitterRootNode () const |
This is used to attach the particle Emmiters to an own node independent from the Scenenode the Particlesystem is attached to. | |
size_t | getParticleQuota () const |
Returns the maximum number of particles this system is allowed to have active at once. | |
ParticleSystemRenderer * | getRenderer () const |
Gets the ParticleRenderer to be used to render this particle system. | |
const String & | getRendererName () const |
Gets the name of the ParticleRenderer to be used to render this particle system. | |
virtual const String & | getResourceGroupName () const |
Return the resource group to be used to load dependent resources. | |
bool | getSortingEnabled () const |
Gets whether particles are sorted relative to the camera. | |
Real | getSpeedFactor () const |
Gets the 'speed factor' on this particle system. | |
bool | getTranslateParticleDirectionIntoWorldSpace () const |
Gets whether particles emitts in direction with is translated into worldspace or not (may only apply to some settings in regards of settings "Localspace" and "ParticleEmitterRootNode") | |
ParticleSystem & | operator= (const ParticleSystem &rhs) |
Assignment operator for copying. | |
void | removeAffector (unsigned short index) |
Removes an affector from the system. | |
void | removeAllAffectors () |
Removes all the affectors from this system. | |
void | removeAllEmitters () |
Removes all the emitters from this system. | |
void | removeEmitter (ParticleEmitter *emitter) |
Removes an emitter from the system. | |
void | removeEmitter (unsigned short index) |
Removes an emitter from the system. | |
void | setBoundsAutoUpdated (bool autoUpdate, Real stopIn=0.0f) |
Sets whether the bounds will be automatically updated for the life of the particle system. | |
virtual void | setCullIndividually (bool cullIndividual) |
Sets whether culling tests particles in this individually as well as in a group. | |
virtual void | setDefaultDimensions (Real width, Real height) |
Sets the default dimensions of the particles in this set. | |
virtual void | setDefaultHeight (Real height) |
See setDefaultDimensions - this sets 1 component individually. | |
virtual void | setDefaultWidth (Real width) |
See setDefaultDimensions - this sets 1 component individually. | |
void | setEmittedEmitterQuota (size_t quota) |
Sets the maximum number of emitted emitters this system is allowed to have active at once. | |
void | setEmitting (bool v) |
This is used to turn on or off particle emission for this system. | |
void | setIterationInterval (Real iterationInterval) |
Sets a 'iteration interval' on this particle system. | |
void | setKeepParticlesInLocalSpace (bool keepLocal) |
Sets whether particles (and any affector effects) remain relative to the node the particle system is attached to. | |
virtual void | setMaterialName (const String &name, const String &groupName=ResourceGroupManager::AUTODETECT_RESOURCE_GROUP_NAME) |
Sets the name of the material to be used for this billboard set. | |
void | setNonVisibleUpdateTimeout (Real timeout) |
Sets when the particle system should stop updating after it hasn't been visible for a while. | |
void | setParticleEmitterRootNode (SceneNode *sceneNode) |
This is used to attach the particle Emmiters to an own node independent from the Scenenode the Particlesystem is attached to. | |
virtual void | setParticleQuota (size_t quota) |
Sets the maximum number of particles this system is allowed to have active at once. | |
void | setRenderer (const String &typeName) |
Sets the ParticleRenderer to be used to render this particle system. | |
void | setRenderQueueGroup (uint8 queueID) override |
Sets the render queue group this entity will be rendered through. | |
void | setRenderQueueSubGroup (uint8 subGroup) |
Sets the render queue sub group. | |
void | setSortingEnabled (bool enabled) |
Set whether or not particles are sorted according to the camera. | |
void | setSpeedFactor (Real speedFactor) |
Sets a 'speed factor' on this particle system, which means it scales the elapsed real time which has passed by this factor before passing it to the emitters, affectors, and the particle life calculation. | |
void | setTranslateParticleDirectionIntoWorldSpace (bool value) |
Sets whether particles emitts in direction with is translated into worldspace or not (may only apply to some settings in regards of settings "Localspace" and "ParticleEmitterRootNode") | |
Public Member Functions inherited from Ogre::StringInterface | |
StringInterface () | |
virtual | ~StringInterface () |
Virtual destructor, see Effective C++. | |
virtual void | copyParametersTo (StringInterface *dest) const |
Method for copying this object's parameters to another object. | |
ParamDictionary * | getParamDictionary () |
Retrieves the parameter dictionary for this class. | |
const ParamDictionary * | getParamDictionary () const |
virtual String | getParameter (const String &name) const |
Generic parameter retrieval method. | |
const ParameterList & | getParameters () 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 ¶mList) |
Generic multiple parameter setting method. | |
Public Member Functions inherited from Ogre::MovableObject | |
MovableObject (IdType id, ObjectMemoryManager *objectMemoryManager, SceneManager *manager, uint8 renderQueueId) | |
Constructor. | |
MovableObject (ObjectData *objectDataPtrs) | |
Don't use this constructor unless you know what you're doing. | |
virtual | ~MovableObject () |
Virtual destructor - read Scott Meyers if you don't know why this is needed. | |
LightList * | _getLightList () |
Returns a pointer to the current list of lights for this object. | |
SceneManager * | _getManager () const |
Get the manager of this object, if any (internal use only) | |
ObjectData & | _getObjectData () |
Returns a direct access to the ObjectData state. | |
const Matrix4 & | _getParentNodeFullTransform () const |
Returns the full transformation of the parent sceneNode or the attachingPoint node. | |
void | _notifyManager (SceneManager *man) |
Notify the object of it's manager (internal use only) | |
virtual void | _notifyParentNodeMemoryChanged () |
virtual void | _notifyStaticDirty () const |
Called by SceneManager when it is telling we're a static MovableObject being dirty Don't call this directly. | |
virtual void | _releaseManualHardwareResources () |
Notifies the movable object that hardware resources were lost. | |
virtual void | _restoreManualHardwareResources () |
Notifies the movable object that hardware resources should be restored. | |
void | addQueryFlags (uint32 flags) |
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object. | |
void | addVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on this object. | |
void | detachFromParent () |
Detaches an object from a parent SceneNode if attached. | |
RealAsUint | getCachedDistanceToCamera () const |
Returns the distance to camera as calculated in cullFrustum() | |
Real | getCachedDistanceToCameraAsReal () const |
Returns the distance to camera as calculated in cullFrustum() | |
bool | getCastShadows () const |
Returns whether shadow casting is enabled for this object. | |
unsigned char | getCurrentMeshLod () const |
uint32 | getLightMask () const |
Get a bitwise mask which will filter the lights affecting this object. | |
Listener * | getListener () const |
Gets the current listener for this object. | |
Aabb | getLocalAabb () const |
Retrieves the local axis-aligned bounding box for this object. | |
float | getLocalRadius () const |
See getLocalAabb and getWorldRadius. | |
const String & | getName () const |
Returns the name of this object. | |
Node * | getParentNode () const |
Returns the node to which this object is attached. | |
SceneNode * | getParentSceneNode () const |
uint32 | getQueryFlags () const |
Returns the query flags relevant for this object. | |
Real | getRenderingDistance () const |
Gets the distance at which batches are no longer rendered. | |
Real | getRenderingMinPixelSize () const |
Returns the minimum pixel size an object needs to be in both screen axes in order to be rendered. | |
uint8 | getRenderQueueGroup () const |
Gets the queue group for this entity, see setRenderQueueGroup for full details. | |
Real | getShadowRenderingDistance () const |
Gets the distance at which batches are no longer casting shadows. | |
SkeletonInstance * | getSkeletonInstance () const |
UserObjectBindings & | getUserObjectBindings () |
Return an instance of user objects binding associated with this class. | |
const UserObjectBindings & | getUserObjectBindings () const |
Return an instance of user objects binding associated with this class. | |
uint32 | getVisibilityFlags () const |
Returns the visibility flags relevant for this object. | |
bool | getVisible () const |
Gets this object whether to be visible or not, if it has a renderable component. | |
Aabb | getWorldAabb () const |
Gets the axis aligned box in world space. | |
Aabb | getWorldAabbUpdated () |
Gets the axis aligned box in world space. | |
float | getWorldRadius () const |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ). | |
float | getWorldRadiusUpdated () |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ). | |
virtual void | instanceBatchCullFrustumThreaded (const Frustum *frustum, const Camera *lodCamera, uint32 combinedVisibilityFlags) |
bool | isAttached () const |
Returns true if this object is attached to a Node. | |
bool | isStatic () const |
Checks whether this MovableObject is static. | |
bool | isVisible () const |
Returns whether or not this object is supposed to be visible or not. | |
const LightList & | queryLights () const |
Gets a list of lights, ordered relative to how close they are to this movable object. | |
void | removeQueryFlags (uint32 flags) |
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object. | |
void | removeVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on this object. | |
void | resetMeshLod () |
Sets mCurrentMeshLod to 0. | |
void | setCastShadows (bool enabled) |
Sets whether or not this object will cast shadows. | |
void | setLightMask (uint32 lightMask) |
Set a bitwise mask which will filter the lights affecting this object. | |
void | setListener (Listener *listener) |
Sets a listener for this object. | |
void | setLocalAabb (const Aabb box) |
Sets the local axis-aligned bounding box for this object. | |
void | setName (const String &name) |
Sets a custom name for this node. | |
void | setQueryFlags (uint32 flags) |
Sets the query flags for this object. | |
void | setRenderingDistance (Real dist) |
Sets the distance at which the object is no longer rendered. | |
void | setRenderingMinPixelSize (Real pixelSize) |
Sets the minimum pixel size an object needs to be in both screen axes in order to be rendered. | |
void | setShadowRenderingDistance (Real dist) |
Sets the distance at which the object is no longer casting shadows. | |
bool | setStatic (bool bStatic) |
Turns this Node into static or dynamic. | |
void | setVisibilityFlags (uint32 flags) |
Sets the visibility flags for this object. | |
void | setVisible (bool visible) |
Tells this object whether to be visible or not, if it has a renderable component. | |
Public Member Functions inherited from Ogre::AnimableObject | |
AnimableObject () | |
virtual | ~AnimableObject () |
virtual AnimableValuePtr | createAnimableValue (const String &valueName) |
Create a reference-counted AnimableValuePtr for the named value. | |
const StringVector & | getAnimableValueNames () const |
Gets a list of animable value names for this object. | |
Public Member Functions inherited from Ogre::IdObject | |
IdObject (IdType id) | |
We don't call generateNewId() here, to prevent objects in the stack (i.e. | |
IdType | getId () const |
Get the unique id of this object. | |
bool | operator() (const IdObject &left, const IdObject &right) |
bool | operator() (const IdObject *left, const IdObject *right) |
Static Public Member Functions | |
static Real | getDefaultIterationInterval () |
Get the default iteration interval for all ParticleSystem instances. | |
static Real | getDefaultNonVisibleUpdateTimeout () |
Get the default nonvisible timeout for all ParticleSystem instances. | |
static void | setDefaultIterationInterval (Real iterationInterval) |
Set the default iteration interval for all ParticleSystem instances. | |
static void | setDefaultNonVisibleUpdateTimeout (Real timeout) |
Set the default nonvisible timeout for all ParticleSystem instances. | |
Static Public Member Functions inherited from Ogre::StringInterface | |
static void | cleanupDictionary () |
Cleans up the static 'msDictionary' required to reset Ogre, otherwise the containers are left with invalid pointers, which will lead to a crash as soon as one of the ResourceManager implementers (e.g. | |
Static Public Member Functions inherited from Ogre::MovableObject | |
static void | buildLightList (const size_t numNodes, ObjectData t, const LightListInfo &globalLightList) |
static void | calculateCastersBox (const size_t numNodes, ObjectData t, uint32 sceneVisibilityFlags, AxisAlignedBox *outBox) |
static void | cullFrustum (const size_t numNodes, ObjectData t, const Camera *frustum, MovableObjectArray &outCulledObjects, const CullFrustumPreparedData &pd) |
static void | cullFrustumPrepare (const Camera *frustum, uint32 sceneVisibilityFlags, const Camera *lodCamera, CullFrustumPreparedData &pd) |
static void | cullLights (const size_t numNodes, ObjectData t, uint32 sceneLightMask, LightListInfo &outGlobalLightList, const FrustumVec &frustums, const FrustumVec &cubemapFrustums) |
See SceneManager::cullLights & see MovableObject::cullFrustum. | |
static uint32 | getDefaultLightMask () |
Get the default light mask for all future MovableObject instances. | |
static uint32 | getDefaultQueryFlags () |
Get the default query flags for all future MovableObject instances. | |
static uint32 | getDefaultVisibilityFlags () |
Get the default visibility flags for all future MovableObject instances. | |
static void | setDefaultLightMask (uint32 mask) |
Set the default light mask for all future MovableObject instances. | |
static void | setDefaultQueryFlags (uint32 flags) |
Set the default query flags for all future MovableObject instances. | |
static void | setDefaultVisibilityFlags (uint32 flags) |
Set the default visibility flags for all future MovableObject instances. | |
static void | updateAllBounds (const size_t numNodes, ObjectData t) |
Additional Inherited Members | |
Public Types inherited from Ogre::MovableObject | |
typedef FastArray< MovableObject * > | MovableObjectArray |
Public Attributes inherited from Ogre::MovableObject | |
size_t | mGlobalIndex |
Index in the vector holding this MO reference (could be our parent node, or a global array tracking all movable objecst to avoid memory leaks). | |
size_t | mParentIndex |
Index in the vector holding this MO reference (could be our parent node, or a global array tracking all movable objecst to avoid memory leaks). | |
RenderableArray | mRenderables |
Static Public Attributes inherited from Ogre::MovableObject | |
static const FastArray< Real > | c_DefaultLodMesh |
Class defining particle system based special effects.
Ogre::ParticleSystem::ParticleSystem | ( | IdType | id, |
ObjectMemoryManager * | objectMemoryManager, | ||
SceneManager * | manager, | ||
const String & | resourceGroupName, | ||
uint8 | renderQueueId = 110u , |
||
bool | bCreateRenderer = true |
||
) |
Creates a particle system with no emitters or affectors.
|
overridevirtual |
ParticleIterator Ogre::ParticleSystem::_getIterator | ( | ) |
Returns an iterator for stepping through all particles in this system.
|
overridevirtual |
Overridden from MovableObject.
Reimplemented from Ogre::MovableObject.
Reimplemented in Ogre::ParticleSystemDef.
|
inline |
Notify this particle system of it's origin.
|
virtual |
Internal callback used by Particles to notify their parent that they have been resized.
|
virtual |
Internal callback used by Particles to notify their parent that they have been rotated.
void Ogre::ParticleSystem::_update | ( | Real | timeElapsed | ) |
Updates the particles in the system based on time elapsed.
timeElapsed | The amount of time, in seconds, since the last frame. |
void Ogre::ParticleSystem::_updateBounds | ( | ) |
Internal method for updating the bounds of the particle system.
|
overridevirtual |
ParticleAffector * Ogre::ParticleSystem::addAffector | ( | const String & | affectorType | ) |
Adds an affector to this particle system.
affectorType | String identifying the affector type to create. Affector types are defined by registering new factories with the manager - see ParticleAffectorFactory for more details. Affector types can be extended by OGRE, plugin authors or application developers. |
ParticleEmitter * Ogre::ParticleSystem::addEmitter | ( | const String & | emitterType | ) |
Adds an emitter to this particle system.
emitterType | String identifying the emitter type to create. Emitter types are defined by registering new factories with the manager - see ParticleEmitterFactory for more details. Emitter types can be extended by OGRE, plugin authors or application developers. |
void Ogre::ParticleSystem::clear | ( | ) |
Empties this set of all particles.
Manually add an emitter particle to the system.
emitterName | The name of a particle emitter that must be emitted. |
Particle * Ogre::ParticleSystem::createParticle | ( | ) |
Manually add a particle to the system.
Fast-forwards this system by the required number of seconds.
time | The number of seconds to fast-forward by. |
interval | The sampling interval used to generate particles, apply affectors etc. The lower this is the more realistic the fast-forward, but it takes more iterations to do it. |
ParticleAffector * Ogre::ParticleSystem::getAffector | ( | unsigned short | index | ) | const |
Retrieves an affector by it's index (zero-based).
index | Zero-based index of the affector to retrieve. |
|
virtual |
Returns whether or not particles in this are tested individually for culling.
|
virtual |
See setDefaultDimensions - this gets 1 component individually.
|
inlinestatic |
Get the default iteration interval for all ParticleSystem instances.
|
inlinestatic |
Get the default nonvisible timeout for all ParticleSystem instances.
|
virtual |
See setDefaultDimensions - this gets 1 component individually.
size_t Ogre::ParticleSystem::getEmittedEmitterQuota | ( | ) | const |
Returns the maximum number of emitted emitters this system is allowed to have active at once.
ParticleEmitter * Ogre::ParticleSystem::getEmitter | ( | unsigned short | index | ) | const |
Retrieves an emitter by it's index (zero-based).
index | Zero-based index of the emitter to retrieve. |
bool Ogre::ParticleSystem::getEmitting | ( | ) | const |
Returns true if the particle system emitting flag is turned on.
|
inline |
Gets a 'iteration interval' on this particle system.
|
inline |
Gets whether particles (and any affector effects) remain relative to the node the particle system is attached to.
|
virtual |
Sets the name of the material to be used for this billboard set.
|
overridevirtual |
Overridden from MovableObject.
Implements Ogre::MovableObject.
|
inline |
Gets when the particle system should stop updating after it hasn't been visible for a while.
unsigned short Ogre::ParticleSystem::getNumAffectors | ( | ) | const |
Returns the number of affectors for this particle system.
unsigned short Ogre::ParticleSystem::getNumEmitters | ( | ) | const |
Returns the number of emitters for this particle system.
size_t Ogre::ParticleSystem::getNumParticles | ( | ) | const |
Gets the number of individual particles in the system right now.
|
inline |
Get the origin of this particle system, e.g.
a script file name.
Particle * Ogre::ParticleSystem::getParticle | ( | size_t | index | ) |
Retrieve a particle from the system for manual tweaking.
SceneNode * Ogre::ParticleSystem::getParticleEmitterRootNode | ( | ) | const |
This is used to attach the particle Emmiters to an own node independent from the Scenenode the Particlesystem is attached to.
size_t Ogre::ParticleSystem::getParticleQuota | ( | ) | const |
Returns the maximum number of particles this system is allowed to have active at once.
ParticleSystemRenderer * Ogre::ParticleSystem::getRenderer | ( | ) | const |
Gets the ParticleRenderer to be used to render this particle system.
const String & Ogre::ParticleSystem::getRendererName | ( | ) | const |
Gets the name of the ParticleRenderer to be used to render this particle system.
|
inlinevirtual |
Return the resource group to be used to load dependent resources.
|
inline |
Gets whether particles are sorted relative to the camera.
|
inline |
Gets the 'speed factor' on this particle system.
|
inline |
Gets whether particles emitts in direction with is translated into worldspace or not (may only apply to some settings in regards of settings "Localspace" and "ParticleEmitterRootNode")
ParticleSystem & Ogre::ParticleSystem::operator= | ( | const ParticleSystem & | rhs | ) |
Assignment operator for copying.
void Ogre::ParticleSystem::removeAffector | ( | unsigned short | index | ) |
Removes an affector from the system.
index | Zero-based index of the affector to retrieve. |
void Ogre::ParticleSystem::removeAllAffectors | ( | ) |
Removes all the affectors from this system.
void Ogre::ParticleSystem::removeAllEmitters | ( | ) |
Removes all the emitters from this system.
void Ogre::ParticleSystem::removeEmitter | ( | ParticleEmitter * | emitter | ) |
Removes an emitter from the system.
emitter | Pointer to a particle emitter. |
void Ogre::ParticleSystem::removeEmitter | ( | unsigned short | index | ) |
Removes an emitter from the system.
index | Zero-based index of the emitter to retrieve. |
void Ogre::ParticleSystem::setBoundsAutoUpdated | ( | bool | autoUpdate, |
Real | stopIn = 0.0f |
||
) |
Sets whether the bounds will be automatically updated for the life of the particle system.
autoUpdate | If true (the default), the particle system will update it's bounds every frame. If false, the bounds update will cease after the 'stopIn' number of seconds have passed. |
stopIn | Only applicable if the first parameter is true, this is the number of seconds after which the automatic update will cease. |
|
virtual |
Sets whether culling tests particles in this individually as well as in a group.
cullIndividual | If true, each particle is tested before being sent to the pipeline as well as the whole set having to pass the coarse group bounding test. |
Sets the default dimensions of the particles in this set.
width | The new default width for the particles in this set. Must be non-negative! |
height | The new default height for the particles in this set. Must be non-negative! |
|
virtual |
See setDefaultDimensions - this sets 1 component individually.
|
inlinestatic |
Set the default iteration interval for all ParticleSystem instances.
|
inlinestatic |
Set the default nonvisible timeout for all ParticleSystem instances.
|
virtual |
See setDefaultDimensions - this sets 1 component individually.
void Ogre::ParticleSystem::setEmittedEmitterQuota | ( | size_t | quota | ) |
Sets the maximum number of emitted emitters this system is allowed to have active at once.
quota | The maximum number of emitted emitters this system is allowed to have. |
void Ogre::ParticleSystem::setEmitting | ( | bool | v | ) |
This is used to turn on or off particle emission for this system.
Note that this does not detach the particle system from the scene node, it will still use some CPU.
void Ogre::ParticleSystem::setIterationInterval | ( | Real | iterationInterval | ) |
Sets a 'iteration interval' on this particle system.
iterationInterval | The iteration interval, default to zero. |
void Ogre::ParticleSystem::setKeepParticlesInLocalSpace | ( | bool | keepLocal | ) |
Sets whether particles (and any affector effects) remain relative to the node the particle system is attached to.
|
virtual |
Sets the name of the material to be used for this billboard set.
name | The new name of the material to use for this set. |
Reimplemented in Ogre::BillboardSet.
void Ogre::ParticleSystem::setNonVisibleUpdateTimeout | ( | Real | timeout | ) |
Sets when the particle system should stop updating after it hasn't been visible for a while.
timeout | The time after which the particle system will be disabled if it is no longer visible. 0 to disable the timeout and always update. |
void Ogre::ParticleSystem::setParticleEmitterRootNode | ( | SceneNode * | sceneNode | ) |
This is used to attach the particle Emmiters to an own node independent from the Scenenode the Particlesystem is attached to.
|
virtual |
Sets the maximum number of particles this system is allowed to have active at once.
quota | The maximum number of particles this system is allowed to have. |
Reimplemented in Ogre::ParticleSystemDef.
void Ogre::ParticleSystem::setRenderer | ( | const String & | typeName | ) |
Sets the ParticleRenderer to be used to render this particle system.
typeName | String identifying the type of renderer to use; a new instance of this type will be created; a factory must have been registered with ParticleSystemManager. |
|
overridevirtual |
Sets the render queue group this entity will be rendered through.
queueID | Enumerated value of the queue group to use. See the enum RenderQueueGroupID for what kind of values can be used here. |
Reimplemented from Ogre::MovableObject.
void Ogre::ParticleSystem::setRenderQueueSubGroup | ( | uint8 | subGroup | ) |
Sets the render queue sub group.
subGroup | The sub group. This value can't exceed OGRE_MAKE_MASK( SubRqIdBits ) |
|
inline |
Set whether or not particles are sorted according to the camera.
|
inline |
Sets a 'speed factor' on this particle system, which means it scales the elapsed real time which has passed by this factor before passing it to the emitters, affectors, and the particle life calculation.
|
inline |
Sets whether particles emitts in direction with is translated into worldspace or not (may only apply to some settings in regards of settings "Localspace" and "ParticleEmitterRootNode")