Class that knows how to sort RenderCommand
objects.
More...
#include <CCRenderer.h>
Public Types | |
enum | QUEUE_GROUP { GLOBALZ_NEG = 0, OPAQUE_3D = 1, TRANSPARENT_3D = 2, GLOBALZ_ZERO = 3, GLOBALZ_POS = 4, QUEUE_COUNT = 5 } |
RenderCommand will be divided into Queue Groups. More... | |
Public Member Functions | |
RenderQueue () | |
Constructor. More... | |
RenderQueue () | |
Constructor. More... | |
RenderQueue () | |
Constructor. More... | |
void | push_back (RenderCommand *command) |
Push a renderCommand into current renderqueue. More... | |
var | push_back ( var command) |
Push a renderCommand into current renderqueue. More... | |
local | push_back ( local command) |
Push a renderCommand into current renderqueue. More... | |
ssize_t | size () const |
Return the number of render commands. More... | |
void | sort () |
Sort the render commands. More... | |
RenderCommand * | operator[] (ssize_t index) const |
Treat sorted commands as an array, access them one by one. More... | |
void | clear () |
Clear all rendered commands. More... | |
var | clear () |
Clear all rendered commands. More... | |
local | clear () |
Clear all rendered commands. More... | |
std::vector< RenderCommand * > & | getSubQueue (QUEUE_GROUP group) |
Get a sub group of the render queue. More... | |
local | getSubQueue ( local group) |
Get a sub group of the render queue. More... | |
ssize_t | getSubQueueSize (QUEUE_GROUP group) const |
Get the number of render commands contained in a subqueue. More... | |
local | getSubQueueSize ( local group) |
Get the number of render commands contained in a subqueue. More... | |
void | saveRenderState () |
Save the current DepthState, CullState, DepthWriteState render state. More... | |
void | restoreRenderState () |
Restore the saved DepthState, CullState, DepthWriteState render state. More... | |
Protected Attributes | |
std::vector< std::vector < RenderCommand * > > | _commands |
The commands in the render queue. More... | |
var | _commands |
The commands in the render queue. More... | |
local | _commands |
The commands in the render queue. More... | |
bool | _isCullEnabled |
Cull state. More... | |
var | _isCullEnabled |
Cull state. More... | |
local | _isCullEnabled |
Cull state. More... | |
bool | _isDepthEnabled |
Depth test enable state. More... | |
var | _isDepthEnabled |
Depth test enable state. More... | |
local | _isDepthEnabled |
Depth test enable state. More... | |
GLboolean | _isDepthWrite |
Depth buffer write state. More... | |
var | _isDepthWrite |
Depth buffer write state. More... | |
local | _isDepthWrite |
Depth buffer write state. More... | |
Class that knows how to sort RenderCommand
objects.
Since the commands that have z == 0
are "pushed back" in the correct order, the only RenderCommand
objects that need to be sorted, are the ones that have z < 0
and z > 0
.
enum QUEUE_GROUP |
RenderCommand will be divided into Queue Groups.
var QUEUE_GROUP |
RenderCommand will be divided into Queue Groups.
local QUEUE_GROUP |
RenderCommand will be divided into Queue Groups.
|
inline |
Constructor.
|
inline |
Constructor.
|
inline |
Constructor.
void clear | ( | ) |
Clear all rendered commands.
var clear | ( | ) |
Clear all rendered commands.
local clear | ( | ) |
Clear all rendered commands.
|
inline |
Get a sub group of the render queue.
|
inline |
Get a sub group of the render queue.
|
inline |
Get a sub group of the render queue.
|
inline |
Get the number of render commands contained in a subqueue.
|
inline |
Get the number of render commands contained in a subqueue.
|
inline |
Get the number of render commands contained in a subqueue.
RenderCommand* operator[] | ( | ssize_t | index | ) | const |
Treat sorted commands as an array, access them one by one.
RenderCommand* operator[] | ( | var | index | ) |
Treat sorted commands as an array, access them one by one.
RenderCommand* operator[] | ( | local | index | ) |
Treat sorted commands as an array, access them one by one.
void push_back | ( | RenderCommand * | command | ) |
Push a renderCommand into current renderqueue.
var push_back | ( | var | command | ) |
Push a renderCommand into current renderqueue.
local push_back | ( | local | command | ) |
Push a renderCommand into current renderqueue.
void restoreRenderState | ( | ) |
Restore the saved DepthState, CullState, DepthWriteState render state.
var restoreRenderState | ( | ) |
Restore the saved DepthState, CullState, DepthWriteState render state.
local restoreRenderState | ( | ) |
Restore the saved DepthState, CullState, DepthWriteState render state.
void saveRenderState | ( | ) |
Save the current DepthState, CullState, DepthWriteState render state.
var saveRenderState | ( | ) |
Save the current DepthState, CullState, DepthWriteState render state.
local saveRenderState | ( | ) |
Save the current DepthState, CullState, DepthWriteState render state.
ssize_t size | ( | ) | const |
Return the number of render commands.
var size | ( | ) |
Return the number of render commands.
local size | ( | ) |
Return the number of render commands.
void sort | ( | ) |
Sort the render commands.
var sort | ( | ) |
Sort the render commands.
local sort | ( | ) |
Sort the render commands.
|
protected |
The commands in the render queue.
|
protected |
The commands in the render queue.
|
protected |
The commands in the render queue.
|
protected |
Cull state.
|
protected |
Cull state.
|
protected |
Cull state.
|
protected |
Depth test enable state.
|
protected |
Depth test enable state.
|
protected |
Depth test enable state.
|
protected |
Depth buffer write state.
|
protected |
Depth buffer write state.
|
protected |
Depth buffer write state.