Command used to render one or more Triangles, which is similar to QuadCommand. More...
#include <CCTrianglesCommand.h>
Classes | |
struct | Triangles |
The structure of Triangles. More... | |
Public Member Functions | |
TrianglesCommand () | |
Construtor. More... | |
~TrianglesCommand () | |
Destructor. More... | |
void | init (float globalOrder, GLuint textureID, GLProgramState *glProgramState, BlendFunc blendType, const Triangles &triangles, const Mat4 &mv, uint32_t flags) |
Initializes the command. More... | |
local | init ( local globalOrder, local textureID, local glProgramState, local blendType, local triangles, local mv, local flags) |
Initializes the command. More... | |
void | init (float globalOrder, GLuint textureID, GLProgramState *glProgramState, BlendFunc blendType, const Triangles &triangles, const Mat4 &mv) |
Deprecated function, the params is similar as the upper init function, with flags equals 0. More... | |
void | useMaterial () const |
Apply the texture, shaders, programs, blend functions to GPU pipeline. More... | |
uint32_t | getMaterialID () const |
Get the material id of command. More... | |
GLuint | getTextureID () const |
Get the openGL texture handle. More... | |
const Triangles & | getTriangles () const |
Get a const reference of triangles. More... | |
ssize_t | getVertexCount () const |
Get the vertex count in the triangles. More... | |
ssize_t | getIndexCount () const |
Get the index count of the triangles. More... | |
const V3F_C4B_T2F * | getVertices () const |
Get the vertex data pointer. More... | |
const unsigned short * | getIndices () const |
Get the index data pointer. More... | |
GLProgramState * | getGLProgramState () const |
Get the glprogramstate. More... | |
local | getGLProgramState () |
Get the glprogramstate. More... | |
BlendFunc | getBlendType () const |
Get the blend function. More... | |
const Mat4 & | getModelView () const |
Get the model view matrix. More... | |
![]() | |
void | init (float globalZOrder, const Mat4 &modelViewTransform, uint32_t flags) |
Init function, will be called by all the render commands. More... | |
float | getGlobalOrder () const |
Get global Z order. More... | |
Type | getType () const |
Returns the Command type. More... | |
bool | isTransparent () const |
Retruns whether is transparent. More... | |
void | setTransparent (bool isTransparent) |
Set transparent flag. More... | |
bool | isSkipBatching () const |
Get skip batching status, if a rendering is skip batching, it will be forced to be rendering seperately. More... | |
void | setSkipBatching (bool value) |
Set skip batching. More... | |
local | setSkipBatching ( local value) |
Set skip batching. More... | |
bool | is3D () const |
Whether the command should be rendered at 3D mode. More... | |
void | set3D (bool value) |
Set the command rendered in 3D mode or not. More... | |
float | getDepth () const |
Get the depth by current model view matrix. More... | |
Protected Member Functions | |
void | generateMaterialID () |
Generate the material ID by textureID, glProgramState, and blend function. More... | |
![]() | |
RenderCommand () | |
Constructor. More... | |
virtual | ~RenderCommand () |
Desctructor. More... | |
local | ~RenderCommand () |
Desctructor. More... | |
void | printID () |
Protected Attributes | |
uint32_t | _materialID |
Generated material id. More... | |
GLuint | _textureID |
OpenGL handle for texture. More... | |
GLProgramState * | _glProgramState |
GLprogramstate for the commmand. More... | |
var | _glProgramState |
GLprogramstate for the commmand. More... | |
local | _glProgramState |
GLprogramstate for the commmand. More... | |
BlendFunc | _blendType |
Blend function when rendering the triangles. More... | |
Triangles | _triangles |
Rendered triangles. More... | |
Mat4 | _mv |
Model view matrix when rendering the triangles. More... | |
![]() | |
Type | _type |
Type used in order to avoid dynamic cast, faster. More... | |
float | _globalOrder |
Commands are sort by global Z order. More... | |
bool | _isTransparent |
Transparent flag. More... | |
bool | _skipBatching |
QuadCommand and TrianglesCommand could be auto batched if there material ID is the same, however, if a command is skip batching, it would be forced to draw in a seperate function call, and break the batch. More... | |
bool | _is3D |
Is the command been rendered on 3D pass. More... | |
float | _depth |
Depth from the model view matrix. More... | |
Additional Inherited Members | |
![]() | |
enum | Type { UNKNOWN_COMMAND, QUAD_COMMAND, CUSTOM_COMMAND, BATCH_COMMAND, GROUP_COMMAND, MESH_COMMAND, PRIMITIVE_COMMAND, TRIANGLES_COMMAND } |
Enum the type of render command. More... | |
Command used to render one or more Triangles, which is similar to QuadCommand.
Every TrianglesCommand will have generate material ID by give textureID, glProgramState, Blend function if the material id is the same, these TrianglesCommands could be batched to save draw call.
TrianglesCommand | ( | ) |
Construtor.
var TrianglesCommand | ( | ) |
Construtor.
local TrianglesCommand | ( | ) |
Construtor.
~TrianglesCommand | ( | ) |
Destructor.
var ~TrianglesCommand | ( | ) |
Destructor.
local ~TrianglesCommand | ( | ) |
Destructor.
|
protected |
Generate the material ID by textureID, glProgramState, and blend function.
|
protected |
Generate the material ID by textureID, glProgramState, and blend function.
|
protected |
Generate the material ID by textureID, glProgramState, and blend function.
|
inline |
Get the blend function.
|
inline |
Get the blend function.
|
inline |
Get the blend function.
|
inline |
Get the glprogramstate.
|
inline |
Get the glprogramstate.
|
inline |
Get the glprogramstate.
|
inline |
Get the index count of the triangles.
|
inline |
Get the index count of the triangles.
|
inline |
Get the index count of the triangles.
|
inline |
Get the index data pointer.
|
inline |
Get the index data pointer.
|
inline |
Get the index data pointer.
|
inline |
Get the material id of command.
|
inline |
Get the material id of command.
|
inline |
Get the material id of command.
|
inline |
Get the model view matrix.
|
inline |
Get the model view matrix.
|
inline |
Get the model view matrix.
|
inline |
Get the openGL texture handle.
|
inline |
Get the openGL texture handle.
|
inline |
Get the openGL texture handle.
|
inline |
Get a const reference of triangles.
|
inline |
Get a const reference of triangles.
|
inline |
Get a const reference of triangles.
|
inline |
Get the vertex count in the triangles.
|
inline |
Get the vertex count in the triangles.
|
inline |
Get the vertex count in the triangles.
|
inline |
Get the vertex data pointer.
|
inline |
Get the vertex data pointer.
|
inline |
Get the vertex data pointer.
void init | ( | float | globalOrder, |
GLuint | textureID, | ||
GLProgramState * | glProgramState, | ||
BlendFunc | blendType, | ||
const Triangles & | triangles, | ||
const Mat4 & | mv, | ||
uint32_t | flags | ||
) |
Initializes the command.
globalOrder | GlobalZOrder of the command. |
textureID | The openGL handle of the used texture. |
glProgramState | The specified glProgram and its uniform. |
blendType | Blend function for the command. |
triangles | Rendered triangles for the command. |
mv | ModelView matrix for the command. |
flags | to indicate that the command is using 3D rendering or not. |
var init | ( | var | globalOrder, |
var | textureID, | ||
var | glProgramState, | ||
var | blendType, | ||
var | triangles, | ||
var | mv, | ||
var | flags | ||
) |
Initializes the command.
globalOrder | GlobalZOrder of the command. |
textureID | The openGL handle of the used texture. |
glProgramState | The specified glProgram and its uniform. |
blendType | Blend function for the command. |
triangles | Rendered triangles for the command. |
mv | ModelView matrix for the command. |
flags | to indicate that the command is using 3D rendering or not. |
local init | ( | local | globalOrder, |
local | textureID, | ||
local | glProgramState, | ||
local | blendType, | ||
local | triangles, | ||
local | mv, | ||
local | flags | ||
) |
Initializes the command.
globalOrder | GlobalZOrder of the command. |
textureID | The openGL handle of the used texture. |
glProgramState | The specified glProgram and its uniform. |
blendType | Blend function for the command. |
triangles | Rendered triangles for the command. |
mv | ModelView matrix for the command. |
flags | to indicate that the command is using 3D rendering or not. |
void init | ( | float | globalOrder, |
GLuint | textureID, | ||
GLProgramState * | glProgramState, | ||
BlendFunc | blendType, | ||
const Triangles & | triangles, | ||
const Mat4 & | mv | ||
) |
Deprecated function, the params is similar as the upper init function, with flags equals 0.
var init | ( | var | globalOrder, |
var | textureID, | ||
var | glProgramState, | ||
var | blendType, | ||
var | triangles, | ||
var | mv | ||
) |
Deprecated function, the params is similar as the upper init function, with flags equals 0.
local init | ( | local | globalOrder, |
local | textureID, | ||
local | glProgramState, | ||
local | blendType, | ||
local | triangles, | ||
local | mv | ||
) |
Deprecated function, the params is similar as the upper init function, with flags equals 0.
void useMaterial | ( | ) | const |
Apply the texture, shaders, programs, blend functions to GPU pipeline.
var useMaterial | ( | ) |
Apply the texture, shaders, programs, blend functions to GPU pipeline.
local useMaterial | ( | ) |
Apply the texture, shaders, programs, blend functions to GPU pipeline.
|
protected |
Blend function when rendering the triangles.
|
protected |
Blend function when rendering the triangles.
|
protected |
Blend function when rendering the triangles.
|
protected |
GLprogramstate for the commmand.
encapsulate shaders and uniforms.
|
protected |
GLprogramstate for the commmand.
encapsulate shaders and uniforms.
|
protected |
GLprogramstate for the commmand.
encapsulate shaders and uniforms.
|
protected |
Generated material id.
|
protected |
Model view matrix when rendering the triangles.
|
protected |
Model view matrix when rendering the triangles.
|
protected |
Model view matrix when rendering the triangles.
|
protected |
OpenGL handle for texture.
|
protected |
OpenGL handle for texture.
|
protected |
OpenGL handle for texture.
|
protected |
Rendered triangles.
|
protected |
Rendered triangles.
|
protected |
Rendered triangles.