A queue of renderable objects to be drawn. More...
#include <RenderQueue.h>
Public Member Functions | |
RenderQueue (StencilLayersController &stencilLayersController) | |
void | BeginEnqueuing () |
void | EnqueueRenderable (const RenderableBase *pRenderable) |
void | EnqueueRenderable (const RenderableBase &renderable) |
void | EnqueueRenderables (const std::vector< RenderableBase * > &renderablesToAdd) |
void | EndEnqueuing () |
void | Render (Rendering::GLState &glState) |
int | GetNumOfRenders () const |
int | GetNumOfShaderChanges () const |
int | GetNumOfMaterialChanges () const |
int | GetNumOfStateRestores () const |
Additional Inherited Members | |
Protected Member Functions inherited from Eegeo::NonCopyable | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable & | operator= (const NonCopyable &)=delete |
A queue of renderable objects to be drawn.
This class handles the sorting of renderable objects prior to their submission to Open GL. Renderables are sorted by layer, material and Z order so as to mimimize Open GL state changes while preserving necessary draw order.