OGRE-Next
2.3
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 Types | |
typedef FastArray< MovableObject * > | MovableObjectArray |
@See SceneManager::cullFrustum More... | |
Public Member Functions | |
ParticleSystem (IdType id, ObjectMemoryManager *objectMemoryManager, SceneManager *manager, const String &resourceGroupName) | |
Creates a particle system with no emitters or affectors. More... | |
virtual | ~ParticleSystem () |
ParticleIterator | _getIterator () |
Returns an iterator for stepping through all particles in this system. More... | |
LightList * | _getLightList () |
Returns a pointer to the current list of lights for this object. More... | |
SceneManager * | _getManager () const |
Get the manager of this object, if any (internal use only) More... | |
ObjectData & | _getObjectData () |
Returns a direct access to the ObjectData state. More... | |
const Matrix4 & | _getParentNodeFullTransform () const |
Returns the full transformation of the parent sceneNode or the attachingPoint node. More... | |
void | _notifyAttached (Node *parent) override |
Overridden from MovableObject. More... | |
void | _notifyManager (SceneManager *man) |
Notify the object of it's manager (internal use only) More... | |
void | _notifyOrigin (const String &origin) |
Notify this particle system of it's origin. More... | |
virtual void | _notifyParentNodeMemoryChanged () |
@See Node::_callMemoryChangeListeners More... | |
virtual void | _notifyParticleResized () |
Internal callback used by Particles to notify their parent that they have been resized. More... | |
virtual void | _notifyParticleRotated () |
Internal callback used by Particles to notify their parent that they have been rotated. More... | |
virtual void | _notifyStaticDirty () const |
Called by SceneManager when it is telling we're a static MovableObject being dirty Don't call this directly. More... | |
virtual void | _releaseManualHardwareResources () |
Notifies the movable object that hardware resources were lost. More... | |
virtual void | _restoreManualHardwareResources () |
Notifies the movable object that hardware resources should be restored. More... | |
void | _update (Real timeElapsed) |
Updates the particles in the system based on time elapsed. More... | |
void | _updateBounds () |
Internal method for updating the bounds of the particle system. More... | |
void | _updateRenderQueue (RenderQueue *queue, Camera *camera, const Camera *lodCamera) override |
Overridden from MovableObject. More... | |
ParticleAffector * | addAffector (const String &affectorType) |
Adds an affector to this particle system. More... | |
ParticleEmitter * | addEmitter (const String &emitterType) |
Adds an emitter to this particle system. More... | |
void | addQueryFlags (uint32 flags) |
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object. More... | |
void | addVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on this object. More... | |
void | clear () |
Empties this set of all particles. More... | |
virtual void | copyParametersTo (StringInterface *dest) const |
Method for copying this object's parameters to another object. More... | |
virtual AnimableValuePtr | createAnimableValue (const String &valueName) |
Create a reference-counted AnimableValuePtr for the named value. More... | |
Particle * | createEmitterParticle (const String &emitterName) |
Manually add an emitter particle to the system. More... | |
Particle * | createParticle () |
Manually add a particle to the system. More... | |
void | detachFromParent () |
Detaches an object from a parent SceneNode if attached. More... | |
void | fastForward (Real time, Real interval=0.1) |
Fast-forwards this system by the required number of seconds. More... | |
ParticleAffector * | getAffector (unsigned short index) const |
Retrieves an affector by it's index (zero-based). More... | |
const StringVector & | getAnimableValueNames () const |
Gets a list of animable value names for this object. More... | |
RealAsUint | getCachedDistanceToCamera () const |
Returns the distance to camera as calculated in @cullFrustum. More... | |
Real | getCachedDistanceToCameraAsReal () const |
Returns the distance to camera as calculated in @cullFrustum. More... | |
bool | getCastShadows () const |
Returns whether shadow casting is enabled for this object. More... | |
virtual bool | getCullIndividually () const |
Returns whether or not particles in this are tested individually for culling. More... | |
unsigned char | getCurrentMeshLod () const |
virtual Real | getDefaultHeight () const |
See setDefaultDimensions - this gets 1 component individually. More... | |
virtual Real | getDefaultWidth () const |
See setDefaultDimensions - this gets 1 component individually. More... | |
size_t | getEmittedEmitterQuota () const |
Returns the maximum number of emitted emitters this system is allowed to have active at once. More... | |
ParticleEmitter * | getEmitter (unsigned short index) const |
Retrieves an emitter by it's index (zero-based). More... | |
bool | getEmitting () const |
Returns true if the particle system emitting flag is turned on. More... | |
IdType | getId () const |
Get the unique id of this object. More... | |
Real | getIterationInterval () const |
Gets a 'iteration interval' on this particle system. More... | |
bool | getKeepParticlesInLocalSpace () const |
Gets whether particles (and any affector effects) remain relative to the node the particle system is attached to. More... | |
uint32 | getLightMask () const |
Get a bitwise mask which will filter the lights affecting this object. More... | |
Listener * | getListener () const |
Gets the current listener for this object. More... | |
Aabb | getLocalAabb () const |
Retrieves the local axis-aligned bounding box for this object. More... | |
float | getLocalRadius () const |
See getLocalAabb and getWorldRadius. More... | |
virtual const String & | getMaterialName () const |
Sets the name of the material to be used for this billboard set. More... | |
const String & | getMovableType () const override |
Overridden from MovableObject. More... | |
const String & | getName () const |
Returns the name of this object. More... | |
Real | getNonVisibleUpdateTimeout () const |
Gets when the particle system should stop updating after it hasn't been visible for a while. More... | |
unsigned short | getNumAffectors () const |
Returns the number of affectors for this particle system. More... | |
unsigned short | getNumEmitters () const |
Returns the number of emitters for this particle system. More... | |
size_t | getNumParticles () const |
Gets the number of individual particles in the system right now. More... | |
const String & | getOrigin () const |
Get the origin of this particle system, e.g. More... | |
ParamDictionary * | getParamDictionary () |
Retrieves the parameter dictionary for this class. More... | |
const ParamDictionary * | getParamDictionary () const |
virtual String | getParameter (const String &name) const |
Generic parameter retrieval method. More... | |
const ParameterList & | getParameters () const |
Retrieves a list of parameters valid for this object. More... | |
Node * | getParentNode () const |
Returns the node to which this object is attached. More... | |
SceneNode * | getParentSceneNode () const |
Particle * | getParticle (size_t index) |
Retrieve a particle from the system for manual tweaking. More... | |
size_t | getParticleQuota () const |
Returns the maximum number of particles this system is allowed to have active at once. More... | |
uint32 | getQueryFlags () const |
Returns the query flags relevant for this object. More... | |
ParticleSystemRenderer * | getRenderer () const |
Gets the ParticleRenderer to be used to render this particle system. More... | |
const String & | getRendererName () const |
Gets the name of the ParticleRenderer to be used to render this particle system. More... | |
Real | getRenderingDistance () const |
Gets the distance at which batches are no longer rendered. More... | |
Real | getRenderingMinPixelSize () const |
Returns the minimum pixel size an object needs to be in both screen axes in order to be rendered. More... | |
uint8 | getRenderQueueGroup () const |
Gets the queue group for this entity, see setRenderQueueGroup for full details. More... | |
virtual const String & | getResourceGroupName () const |
Return the resource group to be used to load dependent resources. More... | |
Real | getShadowRenderingDistance () const |
Gets the distance at which batches are no longer casting shadows. More... | |
SkeletonInstance * | getSkeletonInstance () const |
bool | getSortingEnabled () const |
Gets whether particles are sorted relative to the camera. More... | |
Real | getSpeedFactor () const |
Gets the 'speed factor' on this particle system. More... | |
UserObjectBindings & | getUserObjectBindings () |
Return an instance of user objects binding associated with this class. More... | |
const UserObjectBindings & | getUserObjectBindings () const |
Return an instance of user objects binding associated with this class. More... | |
uint32 | getVisibilityFlags () const |
Returns the visibility flags relevant for this object. More... | |
bool | getVisible () const |
Gets this object whether to be visible or not, if it has a renderable component. More... | |
Aabb | getWorldAabb () const |
Gets the axis aligned box in world space. More... | |
Aabb | getWorldAabbUpdated () |
Gets the axis aligned box in world space. More... | |
float | getWorldRadius () const |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ). More... | |
float | getWorldRadiusUpdated () |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ). More... | |
virtual void | instanceBatchCullFrustumThreaded (const Frustum *frustum, const Camera *lodCamera, uint32 combinedVisibilityFlags) |
@See InstancingTheadedCullingMethod, More... | |
bool | isAttached () const |
Returns true if this object is attached to a Node. More... | |
bool | isStatic () const |
Checks whether this MovableObject is static. @See setStatic. More... | |
bool | isVisible () const |
Returns whether or not this object is supposed to be visible or not. More... | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info More... | |
void * | operator new (size_t sz, void *ptr) |
placement operator new More... | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info More... | |
bool | operator() (const IdObject &left, const IdObject &right) |
bool | operator() (const IdObject *left, const IdObject *right) |
ParticleSystem & | operator= (const ParticleSystem &rhs) |
Assignment operator for copying. More... | |
const LightList & | queryLights () const |
Gets a list of lights, ordered relative to how close they are to this movable object. More... | |
void | removeAffector (unsigned short index) |
Removes an affector from the system. More... | |
void | removeAllAffectors () |
Removes all the affectors from this system. More... | |
void | removeAllEmitters () |
Removes all the emitters from this system. More... | |
void | removeEmitter (ParticleEmitter *emitter) |
Removes an emitter from the system. More... | |
void | removeEmitter (unsigned short index) |
Removes an emitter from the system. More... | |
void | removeQueryFlags (uint32 flags) |
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object. More... | |
void | removeVisibilityFlags (uint32 flags) |
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on this object. More... | |
void | setBoundsAutoUpdated (bool autoUpdate, Real stopIn=0.0f) |
Sets whether the bounds will be automatically updated for the life of the particle system. More... | |
void | setCastShadows (bool enabled) |
Sets whether or not this object will cast shadows. More... | |
virtual void | setCullIndividually (bool cullIndividual) |
Sets whether culling tests particles in this individually as well as in a group. More... | |
virtual void | setDefaultDimensions (Real width, Real height) |
Sets the default dimensions of the particles in this set. More... | |
virtual void | setDefaultHeight (Real height) |
See setDefaultDimensions - this sets 1 component individually. More... | |
virtual void | setDefaultWidth (Real width) |
See setDefaultDimensions - this sets 1 component individually. More... | |
void | setEmittedEmitterQuota (size_t quota) |
Sets the maximum number of emitted emitters this system is allowed to have active at once. More... | |
void | setEmitting (bool v) |
This is used to turn on or off particle emission for this system. More... | |
void | setIterationInterval (Real iterationInterval) |
Sets a 'iteration interval' on this particle system. More... | |
void | setKeepParticlesInLocalSpace (bool keepLocal) |
Sets whether particles (and any affector effects) remain relative to the node the particle system is attached to. More... | |
void | setLightMask (uint32 lightMask) |
Set a bitwise mask which will filter the lights affecting this object. More... | |
void | setListener (Listener *listener) |
Sets a listener for this object. More... | |
void | setLocalAabb (const Aabb box) |
Sets the local axis-aligned bounding box for this object. More... | |
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. More... | |
void | setName (const String &name) |
Sets a custom name for this node. More... | |
void | setNonVisibleUpdateTimeout (Real timeout) |
Sets when the particle system should stop updating after it hasn't been visible for a while. More... | |
virtual bool | setParameter (const String &name, const String &value) |
Generic parameter setting method. More... | |
virtual void | setParameterList (const NameValuePairList ¶mList) |
Generic multiple parameter setting method. More... | |
void | setParticleQuota (size_t quota) |
Sets the maximum number of particles this system is allowed to have active at once. More... | |
void | setQueryFlags (uint32 flags) |
Sets the query flags for this object. More... | |
void | setRenderer (const String &typeName) |
Sets the ParticleRenderer to be used to render this particle system. More... | |
void | setRenderingDistance (Real dist) |
Sets the distance at which the object is no longer rendered. More... | |
void | setRenderingMinPixelSize (Real pixelSize) |
Sets the minimum pixel size an object needs to be in both screen axes in order to be rendered. More... | |
void | setRenderQueueGroup (uint8 queueID) override |
Sets the render queue group this entity will be rendered through. More... | |
void | setRenderQueueSubGroup (uint8 subGroup) |
void | setShadowRenderingDistance (Real dist) |
Sets the distance at which the object is no longer casting shadows. More... | |
void | setSortingEnabled (bool enabled) |
Set whether or not particles are sorted according to the camera. More... | |
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. More... | |
bool | setStatic (bool bStatic) |
Turns this Node into static or dynamic. More... | |
void | setVisibilityFlags (uint32 flags) |
Sets the visibility flags for this object. More... | |
void | setVisible (bool visible) |
Tells this object whether to be visible or not, if it has a renderable component. More... | |
Static Public Member Functions | |
static void | buildLightList (const size_t numNodes, ObjectData t, const LightListInfo &globalLightList) |
@See SceneManager::buildLightList More... | |
static ArrayReal | calculateCameraDistance (uint32 _cameraSortMode, const ArrayVector3 &cameraPos, const ArrayVector3 &cameraDir, ArrayAabb *RESTRICT_ALIAS worldAabb, ArrayReal *RESTRICT_ALIAS worldRadius) |
static void | calculateCastersBox (const size_t numNodes, ObjectData t, uint32 sceneVisibilityFlags, AxisAlignedBox *outBox) |
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. More... | |
static void | cullFrustum (const size_t numNodes, ObjectData t, const Camera *frustum, uint32 sceneVisibilityFlags, MovableObjectArray &outCulledObjects, const Camera *lodCamera) |
static void | cullLights (const size_t numNodes, ObjectData t, uint32 sceneLightMask, LightListInfo &outGlobalLightList, const FrustumVec &frustums, const FrustumVec &cubemapFrustums) |
@See SceneManager::cullLights & More... | |
static Real | getDefaultIterationInterval () |
Get the default iteration interval for all ParticleSystem instances. More... | |
static uint32 | getDefaultLightMask () |
Get the default light mask for all future MovableObject instances. More... | |
static Real | getDefaultNonVisibleUpdateTimeout () |
Get the default nonvisible timeout for all ParticleSystem instances. More... | |
static uint32 | getDefaultQueryFlags () |
Get the default query flags for all future MovableObject instances. More... | |
static uint32 | getDefaultVisibilityFlags () |
Get the default visibility flags for all future MovableObject instances. More... | |
static void | setDefaultIterationInterval (Real iterationInterval) |
Set the default iteration interval for all ParticleSystem instances. More... | |
static void | setDefaultLightMask (uint32 mask) |
Set the default light mask for all future MovableObject instances. More... | |
static void | setDefaultNonVisibleUpdateTimeout (Real timeout) |
Set the default nonvisible timeout for all ParticleSystem instances. More... | |
static void | setDefaultQueryFlags (uint32 flags) |
Set the default query flags for all future MovableObject instances. More... | |
static void | setDefaultVisibilityFlags (uint32 flags) |
Set the default visibility flags for all future MovableObject instances. More... | |
static void | updateAllBounds (const size_t numNodes, ObjectData t) |
@See SceneManager::updateAllBounds More... | |
Public Attributes | |
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). More... | |
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). More... | |
RenderableArray | mRenderables |
Static Public Attributes | |
static const FastArray< Real > | c_DefaultLodMesh |
Class defining particle system based special effects.
|
inherited |
@See SceneManager::cullFrustum
frustum | Frustum to clip against |
sceneVisibilityFlags | Combined scene's visibility flags (i.e. viewport | scene). Set LAYER_SHADOW_CASTER bit if you want to exclude non-shadow casters. |
outCulledObjects | Out. List of objects that are (fully or partially) inside the frustum and should be rendered |
lodCamera | Camera in which lod levels calculations are based (i.e. during shadow pass renders) Note however, we only use this camera to calulate if should be visible according to mUpperDistance |
Ogre::ParticleSystem::ParticleSystem | ( | IdType | id, |
ObjectMemoryManager * | objectMemoryManager, | ||
SceneManager * | manager, | ||
const String & | resourceGroupName | ||
) |
Creates a particle system with no emitters or affectors.
|
virtual |
ParticleIterator Ogre::ParticleSystem::_getIterator | ( | ) |
Returns an iterator for stepping through all particles in this system.
|
inlineinherited |
Returns a pointer to the current list of lights for this object.
|
inlineinherited |
Get the manager of this object, if any (internal use only)
|
inlineinherited |
Returns a direct access to the ObjectData state.
|
inherited |
Returns the full transformation of the parent sceneNode or the attachingPoint node.
|
overridevirtual |
|
inlineinherited |
Notify the object of it's manager (internal use only)
|
inline |
Notify this particle system of it's origin.
|
inlinevirtualinherited |
@See Node::_callMemoryChangeListeners
Reimplemented in Ogre::Item.
|
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.
|
inlinevirtualinherited |
Called by SceneManager when it is telling we're a static MovableObject being dirty Don't call this directly.
|
inlinevirtualinherited |
Notifies the movable object that hardware resources were lost.
Reimplemented in Ogre::v1::Rectangle2D, Ogre::ManualObject, Ogre::v1::ManualObject, and Ogre::v1::BillboardSet.
|
inlinevirtualinherited |
Notifies the movable object that hardware resources should be restored.
Reimplemented in Ogre::v1::Rectangle2D.
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. |
|
inlineinherited |
As setQueryFlags, except the flags passed as parameters are appended to the existing flags on this object.
|
inlineinherited |
As setVisibilityFlags, except the flags passed as parameters are appended to the existing flags on this object.
|
staticinherited |
@See SceneManager::buildLightList
globalLightList | List of lights already culled against all possible frustums and reorganized contiguously for SoA |
|
inlinestaticinherited |
|
staticinherited |
|
staticinherited |
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.
void Ogre::ParticleSystem::clear | ( | ) |
Empties this set of all particles.
|
inlinevirtualinherited |
Method for copying this object's parameters to another object.
dest | Pointer to object to have it's parameters set the same as this object. |
References Ogre::StringInterface::setParameter().
|
inlinevirtualinherited |
Create a reference-counted AnimableValuePtr for the named value.
Reimplemented in Ogre::Light.
References Ogre::Exception::ERR_ITEM_NOT_FOUND, and OGRE_EXCEPT.
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.
|
staticinherited |
|
staticinherited |
@See SceneManager::cullLights &
outGlobalLightList | Output, a list of lights, contiguously placed |
frustums | An array of all frustums we need to check against |
cubemapFrustums | An array of all frustums that are used at least once as cubemaps (@See SceneManager::createCamera) |
|
inherited |
Detaches an object from a parent SceneNode if attached.
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. |
|
inlineinherited |
Gets a list of animable value names for this object.
References Ogre::Exception::ERR_ITEM_NOT_FOUND, and OGRE_EXCEPT.
|
inlineinherited |
Returns the distance to camera as calculated in @cullFrustum.
|
inlineinherited |
Returns the distance to camera as calculated in @cullFrustum.
|
inlineinherited |
Returns whether shadow casting is enabled for this object.
|
virtual |
Returns whether or not particles in this are tested individually for culling.
|
inlineinherited |
|
virtual |
See setDefaultDimensions - this gets 1 component individually.
|
inlinestatic |
Get the default iteration interval for all ParticleSystem instances.
|
inlinestaticinherited |
Get the default light mask for all future MovableObject instances.
|
inlinestatic |
Get the default nonvisible timeout for all ParticleSystem instances.
|
inlinestaticinherited |
Get the default query flags for all future MovableObject instances.
|
inlinestaticinherited |
Get the default visibility flags for all future MovableObject 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.
|
inlineinherited |
Get the unique id of this object.
|
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.
|
inlineinherited |
Get a bitwise mask which will filter the lights affecting this object.
|
inlineinherited |
Gets the current listener for this object.
|
inherited |
Retrieves the local axis-aligned bounding box for this object.
|
inherited |
See getLocalAabb and getWorldRadius.
|
virtual |
Sets the name of the material to be used for this billboard set.
|
overridevirtual |
Overridden from MovableObject.
Implements Ogre::MovableObject.
|
inlineinherited |
Returns the name of this object.
|
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.
|
inlineinherited |
Retrieves the parameter dictionary for this class.
|
inlineinherited |
|
inlinevirtualinherited |
Generic parameter retrieval method.
name | The name of the parameter to get |
References Ogre::ParamCommand::doGet().
|
inherited |
Retrieves a list of parameters valid for this object.
|
inlineinherited |
Returns the node to which this object is attached.
|
inlineinherited |
Particle* Ogre::ParticleSystem::getParticle | ( | size_t | index | ) |
Retrieve a particle from the system for manual tweaking.
size_t Ogre::ParticleSystem::getParticleQuota | ( | ) | const |
Returns the maximum number of particles this system is allowed to have active at once.
|
inlineinherited |
Returns the query flags relevant for this object.
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.
|
inlineinherited |
Gets the distance at which batches are no longer rendered.
|
inlineinherited |
Returns the minimum pixel size an object needs to be in both screen axes in order to be rendered.
|
inlineinherited |
Gets the queue group for this entity, see setRenderQueueGroup for full details.
|
inlinevirtual |
Return the resource group to be used to load dependent resources.
|
inlineinherited |
Gets the distance at which batches are no longer casting shadows.
|
inlineinherited |
|
inline |
Gets whether particles are sorted relative to the camera.
|
inline |
Gets the 'speed factor' on this particle system.
|
inlineinherited |
Return an instance of user objects binding associated with this class.
You can use it to associate one or more custom objects with this class instance.
|
inlineinherited |
Return an instance of user objects binding associated with this class.
You can use it to associate one or more custom objects with this class instance.
|
inlineinherited |
Returns the visibility flags relevant for this object.
Reserved visibility flags are not returned.
|
inlineinherited |
Gets this object whether to be visible or not, if it has a renderable component.
|
inherited |
Gets the axis aligned box in world space.
|
inherited |
Gets the axis aligned box in world space.
|
inherited |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ).
|
inherited |
Gets the bounding Radius scaled by max( scale.x, scale.y, scale.z ).
|
inlinevirtualinherited |
@See InstancingTheadedCullingMethod,
|
inlineinherited |
Returns true if this object is attached to a Node.
|
inherited |
Checks whether this MovableObject is static. @See setStatic.
|
inherited |
Returns whether or not this object is supposed to be visible or not.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
operator new, with debug line info
|
inlineinherited |
placement operator new
|
inlineinherited |
|
inlineinherited |
array operator new, with debug line info
ParticleSystem& Ogre::ParticleSystem::operator= | ( | const ParticleSystem & | rhs | ) |
Assignment operator for copying.
|
inlineinherited |
Gets a list of lights, ordered relative to how close they are to this movable object.
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. |
|
inlineinherited |
As setQueryFlags, except the flags passed as parameters are removed from the existing flags on this object.
|
inlineinherited |
As setVisibilityFlags, except the flags passed as parameters are removed from the existing flags on this object.
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. |
|
inlineinherited |
Sets whether or not this object will cast shadows.
|
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.
|
inlinestaticinherited |
Set the default light mask for all future MovableObject instances.
|
inlinestatic |
Set the default nonvisible timeout for all ParticleSystem instances.
|
inlinestaticinherited |
Set the default query flags for all future MovableObject instances.
|
inlinestaticinherited |
Set the default visibility flags for all future MovableObject 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.
|
inlineinherited |
Set a bitwise mask which will filter the lights affecting this object.
|
inlineinherited |
Sets a listener for this object.
|
inherited |
Sets the local axis-aligned bounding box for this object.
|
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. |
|
inlineinherited |
Sets a custom name for this node.
Doesn't have to be unique
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. |
|
virtualinherited |
Generic parameter setting method.
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. |
Referenced by Ogre::StringInterface::copyParametersTo().
|
virtualinherited |
Generic multiple parameter setting method.
paramList | Name/value pair list |
void Ogre::ParticleSystem::setParticleQuota | ( | size_t | quota | ) |
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. |
|
inlineinherited |
Sets the query flags for this object.
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. |
|
inlineinherited |
Sets the distance at which the object is no longer rendered.
dist | Distance beyond which the object will not be rendered (the default is FLT_MAX, which means objects are always rendered). Values equal or below zero will be ignored, and cause an assertion in debug mode. |
|
inlineinherited |
Sets the minimum pixel size an object needs to be in both screen axes in order to be rendered.
pixelSize | Number of minimum pixels (the default is 0, which means objects are always rendered). |
|
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 | ) |
|
inlineinherited |
Sets the distance at which the object is no longer casting shadows.
dist | Distance beyond which the object will not cast shadows (the default is FLT_MAX, which means objects are always casting shadows). Values equal or below zero will be ignored, and cause an assertion in debug mode. |
|
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.
|
inherited |
Turns this Node into static or dynamic.
|
inlineinherited |
Sets the visibility flags for this object.
|
inlineinherited |
Tells this object whether to be visible or not, if it has a renderable component.
|
staticinherited |
@See SceneManager::updateAllBounds
|
inherited |
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).
Used for O(1) removals.
|
inherited |
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).
Used for O(1) removals.
|
inherited |