All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | List of all members
Eegeo::Rendering::RenderQueue Class Reference

A queue of renderable objects to be drawn. More...

#include <RenderQueue.h>

Inheritance diagram for Eegeo::Rendering::RenderQueue:
Eegeo::NonCopyable

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
 
NonCopyableoperator= (const NonCopyable &)=delete
 

Detailed Description

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.


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