OGRE: Ogre::SceneManager::SceneMgrQueuedRenderableVisitor Class Reference

| 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:
[legend]

## 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

References transparentShadowCastersMode.

## ◆ ~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:

- OgreSceneManager.h