OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
Collection of renderables by priority. More...
#include <OgreRenderQueueSortingGrouping.h>
Public Member Functions | |
RenderPriorityGroup (RenderQueueGroup *parent, bool splitPassesByLightingType, bool splitNoShadowPasses, bool shadowCastersNotReceivers) | |
~RenderPriorityGroup () | |
void | addOrganisationMode (QueuedRenderableCollection::OrganisationMode om) |
Add a required sorting / grouping mode for the solids in this group. | |
void | addRenderable (Renderable *pRend, Technique *pTech) |
Add a renderable to this group. | |
void | clear (void) |
Clears this group of renderables. | |
void | defaultOrganisationMode (void) |
Set the sorting / grouping mode for the solids in this group to the default. | |
const QueuedRenderableCollection & | getSolidsBasic (void) const |
Get the collection of basic solids currently queued, this includes all solids when there are no shadows, or all solids which have shadow receiving enabled when using modulative shadows, or all ambient passes of solids which have shadow receive enabled for additive shadows. | |
const QueuedRenderableCollection & | getSolidsDecal (void) const |
Get the collection of solids currently queued for decal passes (only applicable in additive shadow modes). | |
const QueuedRenderableCollection & | getSolidsDiffuseSpecular (void) const |
Get the collection of solids currently queued per light (only applicable in additive shadow modes). | |
const QueuedRenderableCollection & | getSolidsNoShadowReceive (void) const |
Get the collection of solids for which shadow receipt is disabled (only applicable when shadows are enabled). | |
const QueuedRenderableCollection & | getTransparents (void) const |
Get the collection of transparent objects currently queued. | |
const QueuedRenderableCollection & | getTransparentsUnsorted (void) const |
Get the collection of transparent objects currently queued. | |
void | merge (const RenderPriorityGroup *rhs) |
Merge group of renderables. | |
void | resetOrganisationModes (void) |
Reset the organisation modes required for the solids in this group. | |
void | setShadowCastersCannotBeReceivers (bool ind) |
Sets whether or not objects which cast shadows should be treated as never receiving shadows. | |
void | setSplitNoShadowPasses (bool split) |
Sets whether or not passes which have shadow receive disabled should be separated. | |
void | setSplitPassesByLightingType (bool split) |
Sets whether or not the queue will split passes by their lighting type, ie ambient, per-light and decal. | |
void | sort (const Camera *cam) |
Sorts the objects which have been added to the queue; transparent objects by their depth in relation to the passed in Camera. | |
Collection of renderables by priority.
This class simply groups renderables for rendering. All the renderables contained in this class are destined for the same RenderQueueGroup (coarse groupings like those between the main scene and overlays) and have the same priority (fine groupings for detailed overlap control).
Ogre::RenderPriorityGroup::RenderPriorityGroup | ( | RenderQueueGroup * | parent, |
bool | splitPassesByLightingType, | ||
bool | splitNoShadowPasses, | ||
bool | shadowCastersNotReceivers | ||
) |
|
inline |
|
inline |
Get the collection of basic solids currently queued, this includes all solids when there are no shadows, or all solids which have shadow receiving enabled when using modulative shadows, or all ambient passes of solids which have shadow receive enabled for additive shadows.
|
inline |
Get the collection of solids currently queued per light (only applicable in additive shadow modes).
|
inline |
Get the collection of solids currently queued for decal passes (only applicable in additive shadow modes).
|
inline |
Get the collection of solids for which shadow receipt is disabled (only applicable when shadows are enabled).
|
inline |
Get the collection of transparent objects currently queued.
|
inline |
Get the collection of transparent objects currently queued.
Reset the organisation modes required for the solids in this group.
You can only do this when the group is empty, i.e. after clearing the queue.
void Ogre::RenderPriorityGroup::addOrganisationMode | ( | QueuedRenderableCollection::OrganisationMode | om | ) |
Add a required sorting / grouping mode for the solids in this group.
You can only do this when the group is empty, i.e. after clearing the queue.
Set the sorting / grouping mode for the solids in this group to the default.
You can only do this when the group is empty, i.e. after clearing the queue.
void Ogre::RenderPriorityGroup::addRenderable | ( | Renderable * | pRend, |
Technique * | pTech | ||
) |
Add a renderable to this group.
Sorts the objects which have been added to the queue; transparent objects by their depth in relation to the passed in Camera.
Sets whether or not the queue will split passes by their lighting type, ie ambient, per-light and decal.
Sets whether or not passes which have shadow receive disabled should be separated.
Sets whether or not objects which cast shadows should be treated as never receiving shadows.
void Ogre::RenderPriorityGroup::merge | ( | const RenderPriorityGroup * | rhs | ) |
Merge group of renderables.