Loading...
Searching...
No Matches
Ogre::ParticleSystemRenderer Class Referenceabstract
Core » Effects

Abstract class defining the interface required to be implemented by classes which provide rendering capability to ParticleSystem instances. More...

`#include <OgreParticleSystemRenderer.h>`

Inheritance diagram for Ogre::ParticleSystemRenderer:
[legend]

## Public Member Functions

| ParticleSystemRenderer ()
| Constructor.
virtual | ~ParticleSystemRenderer ()
| Destructor.
ParticleVisualData * | _createVisualData (void)
void | _destroyVisualData (ParticleVisualData *)
virtual SortMode | _getSortMode (void) const =0
| Gets the desired particles sort mode of this renderer.
virtual void | _notifyAttached (Node *parent, bool isTagPoint=false)=0
| Delegated to by ParticleSystem::_notifyAttached.
virtual void | _notifyBoundingBox (const AxisAlignedBox &aabb)
| Tells the Renderer about the ParticleSystem bounds.
virtual void | _notifyCastShadows (bool enabled)
| Tells the Renderer whether to cast shadows.
virtual void | _notifyCurrentCamera (Camera *cam)=0
| Delegated to by ParticleSystem::_notifyCurrentCamera.
virtual void | _notifyDefaultDimensions (Real width, Real height)=0
| Tells the renderer that the particle default size has changed.
virtual void | _notifyParticleCleared (std::vector< Particle * > &currentParticles)
| Optional callback notified when particles cleared.
virtual void | _notifyParticleEmitted (Particle *particle)
| Optional callback notified when particle emitted.
virtual void | _notifyParticleExpired (Particle *particle)
| Optional callback notified when particle expired.
virtual void | _notifyParticleMoved (std::vector< Particle * > &currentParticles)
| Optional callback notified when particles moved.
virtual void | _notifyParticleQuota (size_t quota)=0
| Tells the renderer that the particle quota has changed.
virtual void | _setMaterial (MaterialPtr &mat)=0
| Sets the material this renderer must use; called by ParticleSystem.
virtual void | _updateRenderQueue (RenderQueue *queue, std::vector< Particle * > &currentParticles, bool cullIndividually)=0
| Delegated to by ParticleSystem::_updateRenderQueue.
virtual const String & | getType (void) const =0
| Gets the type of this renderer - must be implemented by subclasses.
virtual void | setKeepParticlesInLocalSpace (bool keepLocal)=0
| Setting carried over from ParticleSystem.
virtual void | setRenderQueueGroup (uint8 queueID)=0
| Sets which render queue group this renderer should target with it's output.
virtual void | setRenderQueueGroupAndPriority (uint8 queueID, ushort priority)=0
| Sets which render queue group and priority this renderer should target with it's output.
virtual void | visitRenderables (Renderable::Visitor *visitor, bool debugRenderables=false)=0
| Required method to allow the renderer to communicate the Renderables it will be using to render the system to a visitor.
Public Member Functions inherited from Ogre::StringInterface
| StringInterface ()
virtual | ~StringInterface ()
| Virtual destructor, see Effective C++.
void | copyParametersTo (StringInterface *dest) const
| Method for copying this object's parameters to another object.
ParamDictionary * | getParamDictionary (void)
| Retrieves the parameter dictionary for this class.
const ParamDictionary * | getParamDictionary (void) const
String | getParameter (const String &name) const
| Generic parameter retrieval method.
const ParameterList & | getParameters (void) const
| Retrieves a list of parameters valid for this object.
bool | setParameter (const String &name, const String &value)
| Generic parameter setting method.
void | setParameterList (const NameValuePairList &paramList)
| Generic multiple parameter setting method.

## Additional Inherited Members

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.

## Detailed Description

Abstract class defining the interface required to be implemented by classes which provide rendering capability to ParticleSystem instances.

## Constructor & Destructor Documentation

## ParticleSystemRenderer()

Ogre::ParticleSystemRenderer::ParticleSystemRenderer | ( |  | ) |

inline

Constructor.

## ~ParticleSystemRenderer()

virtual Ogre::ParticleSystemRenderer::~ParticleSystemRenderer | ( |  | ) |

inline virtual

Destructor.

## Member Function Documentation

## getType()

virtual const String & Ogre::ParticleSystemRenderer::getType | ( | void |  | ) | const

pure virtual

Gets the type of this renderer - must be implemented by subclasses.

Implemented in Ogre::BillboardParticleRenderer.

## _updateRenderQueue()

virtual void Ogre::ParticleSystemRenderer::_updateRenderQueue | ( | RenderQueue * | queue,
|  | std::vector< Particle * > & | currentParticles,
|  | bool | cullIndividually )

pure virtual

Delegated to by ParticleSystem::_updateRenderQueue.

The subclass must update the render queue using whichever Renderable instance(s) it wishes.

Implemented in Ogre::BillboardParticleRenderer.

## _setMaterial()

virtual void Ogre::ParticleSystemRenderer::_setMaterial | ( | MaterialPtr & | mat | ) |

pure virtual

Sets the material this renderer must use; called by ParticleSystem.

Implemented in Ogre::BillboardParticleRenderer.

## _notifyCurrentCamera()

virtual void Ogre::ParticleSystemRenderer::_notifyCurrentCamera | ( | Camera * | cam | ) |

pure virtual

Delegated to by ParticleSystem::_notifyCurrentCamera.

Implemented in Ogre::BillboardParticleRenderer.

## _notifyAttached()

virtual void Ogre::ParticleSystemRenderer::_notifyAttached | ( | Node * | parent,
|  | bool | isTagPoint = false )

pure virtual

Delegated to by ParticleSystem::_notifyAttached.

Implemented in Ogre::BillboardParticleRenderer.

## _notifyParticleQuota()

virtual void Ogre::ParticleSystemRenderer::_notifyParticleQuota | ( | size_t | quota | ) |

pure virtual

Tells the renderer that the particle quota has changed.

Implemented in Ogre::BillboardParticleRenderer.

## _notifyDefaultDimensions()

virtual void Ogre::ParticleSystemRenderer::_notifyDefaultDimensions | ( | Real | width,
|  | Real | height )

pure virtual

Tells the renderer that the particle default size has changed.

Implemented in Ogre::BillboardParticleRenderer.

## _notifyParticleEmitted()

virtual void Ogre::ParticleSystemRenderer::_notifyParticleEmitted | ( | Particle * | particle | ) |

inline virtual

Optional callback notified when particle emitted.

## _notifyParticleExpired()

virtual void Ogre::ParticleSystemRenderer::_notifyParticleExpired | ( | Particle * | particle | ) |

inline virtual

Optional callback notified when particle expired.

## _notifyParticleMoved()

virtual void Ogre::ParticleSystemRenderer::_notifyParticleMoved | ( | std::vector< Particle * > & | currentParticles | ) |

inline virtual

Optional callback notified when particles moved.

## _notifyParticleCleared()

virtual void Ogre::ParticleSystemRenderer::_notifyParticleCleared | ( | std::vector< Particle * > & | currentParticles | ) |

inline virtual

Optional callback notified when particles cleared.

## _createVisualData()

ParticleVisualData * Ogre::ParticleSystemRenderer::_createVisualData | ( | void |  | ) |

inline

Deprecated
  do not use

## _destroyVisualData()

void Ogre::ParticleSystemRenderer::_destroyVisualData | ( | ParticleVisualData * |  | ) |

inline

Deprecated
  do not use

## setRenderQueueGroup()

virtual void Ogre::ParticleSystemRenderer::setRenderQueueGroup | ( | uint8 | queueID | ) |

pure virtual

Sets which render queue group this renderer should target with it's output.

Implemented in Ogre::BillboardParticleRenderer.

## setRenderQueueGroupAndPriority()

virtual void Ogre::ParticleSystemRenderer::setRenderQueueGroupAndPriority | ( | uint8 | queueID,
|  | ushort | priority )

pure virtual

Sets which render queue group and priority this renderer should target with it's output.

Implemented in Ogre::BillboardParticleRenderer.

## setKeepParticlesInLocalSpace()

virtual void Ogre::ParticleSystemRenderer::setKeepParticlesInLocalSpace | ( | bool | keepLocal | ) |

pure virtual

Setting carried over from ParticleSystem.

Implemented in Ogre::BillboardParticleRenderer.

## _getSortMode()

virtual SortMode Ogre::ParticleSystemRenderer::_getSortMode | ( | void |  | ) | const

pure virtual

Gets the desired particles sort mode of this renderer.

Implemented in Ogre::BillboardParticleRenderer.

## visitRenderables()

virtual void Ogre::ParticleSystemRenderer::visitRenderables | ( | Renderable::Visitor * | visitor,
|  | bool | debugRenderables = false )

pure virtual

Required method to allow the renderer to communicate the Renderables it will be using to render the system to a visitor.

See also
  MovableObject::visitRenderables

Implemented in Ogre::BillboardParticleRenderer.

## _notifyBoundingBox()

virtual void Ogre::ParticleSystemRenderer::_notifyBoundingBox | ( | const AxisAlignedBox & | aabb | ) |

inline virtual

Tells the Renderer about the ParticleSystem bounds.

Reimplemented in Ogre::BillboardParticleRenderer.

## _notifyCastShadows()

virtual void Ogre::ParticleSystemRenderer::_notifyCastShadows | ( | bool | enabled | ) |

inline virtual

Tells the Renderer whether to cast shadows.

Reimplemented in Ogre::BillboardParticleRenderer.

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

- OgreParticleSystemRenderer.h