OGRE 14.5
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::SceneManager::SceneMgrQueuedRenderableVisitor Class Reference

Inner helper class to implement the visitor pattern for rendering objects in a queue. More...

#include <OgreSceneManager.h>

Inheritance diagram for Ogre::SceneManager::SceneMgrQueuedRenderableVisitor:

Public Member Functions

 SceneMgrQueuedRenderableVisitor ()
 ~SceneMgrQueuedRenderableVisitor ()
void renderObjects (const QueuedRenderableCollection &objs, QueuedRenderableCollection::OrganisationMode om, bool lightScissoringClipping, bool doLightIteration, const LightList *manualLightList=0, bool transparentShadowCastersMode=false)
 Render a set of objects.
void renderTransparents (const RenderPriorityGroup *priorityGrp, QueuedRenderableCollection::OrganisationMode om)
void visit (const Pass *p, RenderableList &rs) override
 When visiting a collection grouped by pass, this is called.
void visit (RenderablePass *rp) override
 Called when visiting a RenderablePass, i.e.
Public Member Functions inherited from Ogre::QueuedRenderableVisitor
 QueuedRenderableVisitor ()
virtual ~QueuedRenderableVisitor ()

Public Attributes

bool autoLights
 Automatic light handling?
const LightList * manualLightList
 Manual light list.
bool scissoring
 Scissoring if requested?
SceneManager * targetSceneMgr
 Target SM to send renderables to.
bool transparentShadowCastersMode
 Are we in transparent shadow caster mode?

Detailed Description

Inner helper class to implement the visitor pattern for rendering objects in a queue.

Constructor & Destructor Documentation

◆ SceneMgrQueuedRenderableVisitor()

Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::SceneMgrQueuedRenderableVisitor ( )
inline

◆ ~SceneMgrQueuedRenderableVisitor()

Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::~SceneMgrQueuedRenderableVisitor ( )
inline

Member Function Documentation

◆ visit() [1/2]

void Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::visit ( const Pass * p,
RenderableList & rs )
overridevirtual

When visiting a collection grouped by pass, this is called.

If this method is called, the RenderablePass visit method will not be called for this collection.

Implements Ogre::QueuedRenderableVisitor.

◆ visit() [2/2]

void Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::visit ( RenderablePass * rp)
overridevirtual

Called when visiting a RenderablePass, i.e.

items in a sorted collection where items are not grouped by pass.

If this is called, the other visit method will not be called.

Implements Ogre::QueuedRenderableVisitor.

◆ renderObjects()

void Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::renderObjects ( const QueuedRenderableCollection & objs,
QueuedRenderableCollection::OrganisationMode om,
bool lightScissoringClipping,
bool doLightIteration,
const LightList * manualLightList = 0,
bool transparentShadowCastersMode = false )

Render a set of objects.

transparentShadowCastersMode is intended to be used to render the shadows of transparent objects which have transparency_casts_shadows set to 'on' in their material

See also
SceneManager::_injectRenderWithPass

References manualLightList, and transparentShadowCastersMode.

◆ renderTransparents()

void Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::renderTransparents ( const RenderPriorityGroup * priorityGrp,
QueuedRenderableCollection::OrganisationMode om )

Member Data Documentation

◆ targetSceneMgr

SceneManager* Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::targetSceneMgr

Target SM to send renderables to.

◆ transparentShadowCastersMode

bool Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::transparentShadowCastersMode

Are we in transparent shadow caster mode?

Referenced by SceneMgrQueuedRenderableVisitor(), and renderObjects().

◆ autoLights

bool Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::autoLights

Automatic light handling?

◆ manualLightList

const LightList* Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::manualLightList

Manual light list.

Referenced by renderObjects().

◆ scissoring

bool Ogre::SceneManager::SceneMgrQueuedRenderableVisitor::scissoring

Scissoring if requested?


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