OGRE
1.11.6
Object-Oriented Graphics Rendering Engine
|
A grouping level underneath RenderQueue which groups renderables to be issued at coarsely the same time to the renderer. More...
#include <OgreRenderQueueSortingGrouping.h>
Public Types | |
typedef ConstMapIterator< PriorityMap > | ConstPriorityMapIterator |
typedef std::map< ushort, RenderPriorityGroup *, std::less< ushort > > | PriorityMap |
typedef MapIterator< PriorityMap > | PriorityMapIterator |
Public Member Functions | |
RenderQueueGroup (RenderQueue *parent, bool splitPassesByLightingType, bool splitNoShadowPasses, bool shadowCastersNotReceivers) | |
~RenderQueueGroup () | |
void | addOrganisationMode (QueuedRenderableCollection::OrganisationMode om) |
Add a required sorting / grouping mode for the solids in this group. More... | |
void | addRenderable (Renderable *pRend, Technique *pTech, ushort priority) |
Add a renderable to this group, with the given priority. More... | |
void | clear (bool destroy=false) |
Clears this group of renderables. More... | |
void | defaultOrganisationMode (void) |
Setthe sorting / grouping mode for the solids in this group to the default. More... | |
PriorityMapIterator | getIterator (void) |
Get an iterator for browsing through child contents. More... | |
ConstPriorityMapIterator | getIterator (void) const |
Get a const iterator for browsing through child contents. More... | |
bool | getShadowsEnabled (void) const |
Are shadows enabled for this queue? More... | |
void | merge (const RenderQueueGroup *rhs) |
Merge group of renderables. More... | |
void | resetOrganisationModes (void) |
Reset the organisation modes required for the solids in this group. More... | |
void | setShadowCastersCannotBeReceivers (bool ind) |
Sets whether or not objects which cast shadows should be treated as never receiving shadows. More... | |
void | setShadowsEnabled (bool enabled) |
Indicate whether a given queue group will be doing any shadow setup. More... | |
void | setSplitNoShadowPasses (bool split) |
Sets whether or not the queue will split passes which have shadow receive turned off (in their parent material), which is needed when certain shadow techniques are used. More... | |
void | setSplitPassesByLightingType (bool split) |
Sets whether or not the queue will split passes by their lighting type, ie ambient, per-light and decal. More... | |
A grouping level underneath RenderQueue which groups renderables to be issued at coarsely the same time to the renderer.
typedef std::map<ushort, RenderPriorityGroup*, std::less<ushort> > Ogre::RenderQueueGroup::PriorityMap |
|
inline |
|
inline |
References OGRE_DELETE.
|
inline |
Get an iterator for browsing through child contents.
Referenced by merge().
|
inline |
Get a const iterator for browsing through child contents.
|
inline |
Add a renderable to this group, with the given priority.
References Ogre::RenderPriorityGroup::addOrganisationMode(), Ogre::RenderPriorityGroup::addRenderable(), OGRE_NEW, and Ogre::RenderPriorityGroup::resetOrganisationModes().
|
inline |
Clears this group of renderables.
destroy | If false, doesn't delete any priority groups, just empties them. Saves on memory deallocations since the chances are roughly the same kinds of renderables are going to be sent to the queue again next time. If true, completely destroys. |
References OGRE_DELETE.
|
inline |
Indicate whether a given queue group will be doing any shadow setup.
|
inline |
Are shadows enabled for this queue?
|
inline |
Sets whether or not the queue will split passes by their lighting type, ie ambient, per-light and decal.
|
inline |
Sets whether or not the queue will split passes which have shadow receive turned off (in their parent material), which is needed when certain shadow techniques are used.
|
inline |
Sets whether or not objects which cast shadows should be treated as never receiving shadows.
|
inline |
Reset the organisation modes required for the solids in this group.
|
inline |
Add a required sorting / grouping mode for the solids in this group.
|
inline |
Setthe sorting / grouping mode for the solids in this group to the default.
|
inline |
Merge group of renderables.
References Ogre::RenderPriorityGroup::addOrganisationMode(), getIterator(), Ogre::MapIteratorWrapper< T, IteratorType >::getNext(), Ogre::IteratorWrapper< T, IteratorType, ValType >::hasMoreElements(), Ogre::RenderPriorityGroup::merge(), OGRE_NEW, Ogre::MapIteratorWrapper< T, IteratorType >::peekNextKey(), and Ogre::RenderPriorityGroup::resetOrganisationModes().