GLProgram Class that implements a glProgram. More...
Inherits Ref.
Classes | |
struct | UniformFlags |
Flags used by the uniforms. More... | |
Public Types | |
enum | { VERTEX_ATTRIB_POSITION, VERTEX_ATTRIB_COLOR, VERTEX_ATTRIB_TEX_COORD, VERTEX_ATTRIB_TEX_COORD1, VERTEX_ATTRIB_TEX_COORD2, VERTEX_ATTRIB_TEX_COORD3, VERTEX_ATTRIB_NORMAL, VERTEX_ATTRIB_BLEND_WEIGHT, VERTEX_ATTRIB_BLEND_INDEX, VERTEX_ATTRIB_TANGENT, VERTEX_ATTRIB_BINORMAL } |
Enum the preallocated vertex attribute. More... | |
enum | { UNIFORM_AMBIENT_COLOR, UNIFORM_P_MATRIX, UNIFORM_MULTIVIEW_P_MATRIX, UNIFORM_MV_MATRIX, UNIFORM_MVP_MATRIX, UNIFORM_MULTIVIEW_MVP_MATRIX, UNIFORM_NORMAL_MATRIX, UNIFORM_TIME, UNIFORM_SIN_TIME, UNIFORM_COS_TIME, UNIFORM_RANDOM01, UNIFORM_SAMPLER0 } |
Preallocated uniform handle. More... | |
Public Member Functions | |
GLProgram () | |
Constructor. More... | |
GLProgram () | |
Constructor. More... | |
GLProgram () | |
Constructor. More... | |
virtual | ~GLProgram () |
Destructor. More... | |
var | ~GLProgram () |
Destructor. More... | |
local | ~GLProgram () |
Destructor. More... | |
void | bindAttribLocation (const std::string &attributeName, GLuint index) const |
It will add a new attribute to the shader by calling glBindAttribLocation. More... | |
var | bindAttribLocation ( var attributeName, var index) |
It will add a new attribute to the shader by calling glBindAttribLocation. More... | |
local | bindAttribLocation ( local attributeName, local index) |
It will add a new attribute to the shader by calling glBindAttribLocation. More... | |
GLint | getAttribLocation (const std::string &attributeName) const |
Calls glGetAttribLocation. More... | |
var | getAttribLocation ( var attributeName) |
Calls glGetAttribLocation. More... | |
local | getAttribLocation ( local attributeName) |
Calls glGetAttribLocation. More... | |
GLint | getUniformLocation (const std::string &attributeName) const |
Calls glGetUniformLocation(). More... | |
bool | link () |
links the glProgram | |
var | link () |
links the glProgram | |
local | link () |
links the glProgram | |
void | use () |
it will call glUseProgram() | |
var | use () |
it will call glUseProgram() | |
local | use () |
it will call glUseProgram() | |
void | updateUniforms () |
It will create 4 uniforms: More... | |
var | updateUniforms () |
It will create 4 uniforms: More... | |
local | updateUniforms () |
It will create 4 uniforms: More... | |
GLint | getUniformLocationForName (const char *name) const |
calls retrieves the named uniform location for this shader program. More... | |
void | setUniformLocationWith1i (GLint location, GLint i1) |
calls glUniform1i only if the values are different than the previous call for this same shader program. | |
void | setUniformLocationWith2i (GLint location, GLint i1, GLint i2) |
calls glUniform2i only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith3i (GLint location, GLint i1, GLint i2, GLint i3) |
calls glUniform3i only if the values are different than the previous call for this same shader program. More... | |
var | setUniformLocationWith3i ( var location, var i1, var i2, var i3) |
calls glUniform3i only if the values are different than the previous call for this same shader program. More... | |
local | setUniformLocationWith3i ( local location, local i1, local i2, local i3) |
calls glUniform3i only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith4i (GLint location, GLint i1, GLint i2, GLint i3, GLint i4) |
calls glUniform4i only if the values are different than the previous call for this same shader program. More... | |
var | setUniformLocationWith4i ( var location, var i1, var i2, var i3, var i4) |
calls glUniform4i only if the values are different than the previous call for this same shader program. More... | |
local | setUniformLocationWith4i ( local location, local i1, local i2, local i3, local i4) |
calls glUniform4i only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith2iv (GLint location, GLint *ints, unsigned int numberOfArrays) |
calls glUniform2iv only if the values are different than the previous call for this same shader program. More... | |
var | setUniformLocationWith2iv ( var location, var ints, var numberOfArrays) |
calls glUniform2iv only if the values are different than the previous call for this same shader program. More... | |
local | setUniformLocationWith2iv ( local location, local ints, local numberOfArrays) |
calls glUniform2iv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith3iv (GLint location, GLint *ints, unsigned int numberOfArrays) |
calls glUniform3iv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith4iv (GLint location, GLint *ints, unsigned int numberOfArrays) |
calls glUniform4iv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith1f (GLint location, GLfloat f1) |
calls glUniform1f only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith2f (GLint location, GLfloat f1, GLfloat f2) |
calls glUniform2f only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith3f (GLint location, GLfloat f1, GLfloat f2, GLfloat f3) |
calls glUniform3f only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith4f (GLint location, GLfloat f1, GLfloat f2, GLfloat f3, GLfloat f4) |
calls glUniform4f only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith1fv (GLint location, const GLfloat *floats, unsigned int numberOfArrays) |
calls glUniformfv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith2fv (GLint location, const GLfloat *floats, unsigned int numberOfArrays) |
calls glUniform2fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith3fv (GLint location, const GLfloat *floats, unsigned int numberOfArrays) |
calls glUniform3fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWith4fv (GLint location, const GLfloat *floats, unsigned int numberOfArrays) |
calls glUniform4fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWithMatrix2fv (GLint location, const GLfloat *matrixArray, unsigned int numberOfMatrices) |
calls glUniformMatrix2fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWithMatrix3fv (GLint location, const GLfloat *matrixArray, unsigned int numberOfMatrices) |
calls glUniformMatrix3fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformLocationWithMatrix4fv (GLint location, const GLfloat *matrixArray, unsigned int numberOfMatrices) |
calls glUniformMatrix4fv only if the values are different than the previous call for this same shader program. More... | |
void | setUniformsForBuiltins (const Mat4 &modelView) |
Update the builtin uniforms if they are different than the previous call for this same shader program. More... | |
void | setUniformsForBuiltins () |
Update the builtin uniforms if they are different than the previous call for this same shader program. | |
var | setUniformsForBuiltins () |
Update the builtin uniforms if they are different than the previous call for this same shader program. | |
local | setUniformsForBuiltins () |
Update the builtin uniforms if they are different than the previous call for this same shader program. | |
std::string | getVertexShaderLog () const |
returns the vertexShader error log | |
local | getVertexShaderLog () |
returns the vertexShader error log | |
std::string | getFragmentShaderLog () const |
returns the fragmentShader error log | |
var | getFragmentShaderLog () |
returns the fragmentShader error log | |
local | getFragmentShaderLog () |
returns the fragmentShader error log | |
std::string | getProgramLog () const |
returns the program error log | |
var | getProgramLog () |
returns the program error log | |
local | getProgramLog () |
returns the program error log | |
void | reset () |
Reload all shaders, this function is designed for android when opengl context lost, so don't call it. | |
var | reset () |
Reload all shaders, this function is designed for android when opengl context lost, so don't call it. | |
local | reset () |
Reload all shaders, this function is designed for android when opengl context lost, so don't call it. | |
GLuint | getProgram () const |
returns the OpenGL Program object | |
const UniformFlags & | getUniformFlags () const |
returns the Uniform flags | |
var | getUniformFlags () |
returns the Uniform flags | |
local | getUniformFlags () |
returns the Uniform flags | |
Uniform * | getUniform (const std::string &name) |
Public Member Functions inherited from Ref | |
void | retain () |
Retains the ownership. More... | |
void | release () |
Releases the ownership immediately. More... | |
local | release () |
Releases the ownership immediately. More... | |
Ref * | autorelease () |
Releases the ownership sometime soon automatically. More... | |
unsigned int | getReferenceCount () const |
Returns the Ref's current reference count. More... | |
local | getReferenceCount () |
Returns the Ref's current reference count. More... | |
virtual | ~Ref () |
Destructor. More... | |
Static Public Attributes | |
static const char * | UNIFORM_NAME_ALPHA_TEST_VALUE |
Alpha test value uniform. More... | |
static const char * | ATTRIBUTE_NAME_NORMAL |
Attribute normal. More... | |
static const char * | ATTRIBUTE_NAME_BLEND_WEIGHT |
Attribute blend weight. More... | |
var | ATTRIBUTE_NAME_BLEND_WEIGHT |
Attribute blend weight. More... | |
local | ATTRIBUTE_NAME_BLEND_WEIGHT |
Attribute blend weight. More... | |
static const char * | ATTRIBUTE_NAME_BLEND_INDEX |
Attribute blend index. More... | |
var | ATTRIBUTE_NAME_BLEND_INDEX |
Attribute blend index. More... | |
local | ATTRIBUTE_NAME_BLEND_INDEX |
Attribute blend index. More... | |
static const char * | ATTRIBUTE_NAME_TANGENT |
Attribute blend tangent. More... | |
static const char * | ATTRIBUTE_NAME_BINORMAL |
Attribute blend binormal. More... | |
var | ATTRIBUTE_NAME_BINORMAL |
Attribute blend binormal. More... | |
local | ATTRIBUTE_NAME_BINORMAL |
Attribute blend binormal. More... | |
Built Shader types | |
static const char * | SHADER_NAME_ETC1AS_POSITION_TEXTURE_COLOR |
ETC1 ALPHA supports for 2d. | |
static const char * | SHADER_NAME_ETC1AS_POSITION_TEXTURE_COLOR_NO_MVP |
static const char * | SHADER_NAME_ETC1AS_POSITION_TEXTURE_GRAY |
static const char * | SHADER_NAME_ETC1AS_POSITION_TEXTURE_GRAY_NO_MVP |
static const char * | SHADER_NAME_POSITION_TEXTURE_COLOR |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE_COLOR_NO_MVP |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE_ALPHA_TEST |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE_ALPHA_TEST_NO_MV |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_COLOR |
Built in shader for 2d. More... | |
var | SHADER_NAME_POSITION_COLOR |
Built in shader for 2d. More... | |
local | SHADER_NAME_POSITION_COLOR |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_COLOR_TEXASPOINTSIZE |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_COLOR_NO_MVP |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE_U_COLOR |
Built in shader for 2d. More... | |
var | SHADER_NAME_POSITION_TEXTURE_U_COLOR |
Built in shader for 2d. More... | |
local | SHADER_NAME_POSITION_TEXTURE_U_COLOR |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_TEXTURE_A8_COLOR |
Built in shader for 2d. More... | |
var | SHADER_NAME_POSITION_TEXTURE_A8_COLOR |
Built in shader for 2d. More... | |
local | SHADER_NAME_POSITION_TEXTURE_A8_COLOR |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_U_COLOR |
Built in shader for 2d. More... | |
var | SHADER_NAME_POSITION_U_COLOR |
Built in shader for 2d. More... | |
local | SHADER_NAME_POSITION_U_COLOR |
Built in shader for 2d. More... | |
static const char * | SHADER_NAME_POSITION_LENGTH_TEXTURE_COLOR |
Built in shader for draw a sector with 90 degrees with center at bottom left point. More... | |
static const char * | SHADER_NAME_POSITION_GRAYSCALE |
Built in shader for ui effects. | |
static const char * | SHADER_NAME_LABEL_NORMAL |
static const char * | SHADER_NAME_LABEL_OUTLINE |
var | SHADER_NAME_LABEL_OUTLINE |
local | SHADER_NAME_LABEL_OUTLINE |
static const char * | SHADER_NAME_LABEL_DISTANCEFIELD_NORMAL |
var | SHADER_NAME_LABEL_DISTANCEFIELD_NORMAL |
local | SHADER_NAME_LABEL_DISTANCEFIELD_NORMAL |
static const char * | SHADER_NAME_LABEL_DISTANCEFIELD_GLOW |
static const char * | SHADER_3D_POSITION |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform. More... | |
var | SHADER_3D_POSITION |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform. More... | |
local | SHADER_3D_POSITION |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform. More... | |
static const char * | SHADER_3D_POSITION_TEXTURE |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform. More... | |
var | SHADER_3D_POSITION_TEXTURE |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform. More... | |
local | SHADER_3D_POSITION_TEXTURE |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform. More... | |
static const char * | SHADER_3D_SKINPOSITION_TEXTURE |
Built in shader used for 3D, support Position (Skeletal animation by hardware skin) and Texture vertex attribute, with color specified by a uniform. | |
static const char * | SHADER_3D_POSITION_NORMAL |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting. More... | |
var | SHADER_3D_POSITION_NORMAL |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting. More... | |
local | SHADER_3D_POSITION_NORMAL |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting. More... | |
static const char * | SHADER_3D_POSITION_NORMAL_TEXTURE |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting. More... | |
var | SHADER_3D_POSITION_NORMAL_TEXTURE |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting. More... | |
local | SHADER_3D_POSITION_NORMAL_TEXTURE |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting. More... | |
static const char * | SHADER_3D_SKINPOSITION_NORMAL_TEXTURE |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Normal, Texture vertex attribute, used in lighting. More... | |
static const char * | SHADER_3D_POSITION_BUMPEDNORMAL_TEXTURE |
Built in shader used for 3D, support Position, Bumped Normal, Texture vertex attribute, used in lighting. More... | |
static const char * | SHADER_3D_SKINPOSITION_BUMPEDNORMAL_TEXTURE |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Bumped Normal, Texture vertex attribute, used in lighting. More... | |
static const char * | SHADER_3D_PARTICLE_TEXTURE |
Built in shader for particles, support Position and Texture, with a color specified by a uniform. | |
static const char * | SHADER_3D_PARTICLE_COLOR |
Built in shader for particles, support Position, with a color specified by a uniform. | |
var | SHADER_3D_PARTICLE_COLOR |
Built in shader for particles, support Position, with a color specified by a uniform. | |
local | SHADER_3D_PARTICLE_COLOR |
Built in shader for particles, support Position, with a color specified by a uniform. | |
static const char * | SHADER_3D_SKYBOX |
Built in shader for skybox. | |
var | SHADER_3D_SKYBOX |
Built in shader for skybox. | |
local | SHADER_3D_SKYBOX |
Built in shader for skybox. | |
static const char * | SHADER_3D_TERRAIN |
Built in shader for terrain. | |
var | SHADER_3D_TERRAIN |
Built in shader for terrain. | |
local | SHADER_3D_TERRAIN |
Built in shader for terrain. | |
static const char * | SHADER_LAYER_RADIAL_GRADIENT |
Built in shader for LayerRadialGradient. | |
var | SHADER_LAYER_RADIAL_GRADIENT |
Built in shader for LayerRadialGradient. | |
local | SHADER_LAYER_RADIAL_GRADIENT |
Built in shader for LayerRadialGradient. | |
static const char * | SHADER_CAMERA_CLEAR |
Built in shader for camera clear. | |
var | SHADER_CAMERA_CLEAR |
Built in shader for camera clear. | |
local | SHADER_CAMERA_CLEAR |
Built in shader for camera clear. | |
Built uniform names | |
static const char * | UNIFORM_NAME_AMBIENT_COLOR |
Ambient Color uniform. More... | |
var | UNIFORM_NAME_AMBIENT_COLOR |
Ambient Color uniform. More... | |
local | UNIFORM_NAME_AMBIENT_COLOR |
Ambient Color uniform. More... | |
static const char * | UNIFORM_NAME_P_MATRIX |
Projection Matrix uniform. More... | |
var | UNIFORM_NAME_P_MATRIX |
Projection Matrix uniform. More... | |
local | UNIFORM_NAME_P_MATRIX |
Projection Matrix uniform. More... | |
static const char * | UNIFORM_NAME_MULTIVIEW_P_MATRIX |
MultiView Projection Matrix uniform. More... | |
var | UNIFORM_NAME_MULTIVIEW_P_MATRIX |
MultiView Projection Matrix uniform. More... | |
local | UNIFORM_NAME_MULTIVIEW_P_MATRIX |
MultiView Projection Matrix uniform. More... | |
static const char * | UNIFORM_NAME_MV_MATRIX |
Model view matrix uniform. More... | |
var | UNIFORM_NAME_MV_MATRIX |
Model view matrix uniform. More... | |
local | UNIFORM_NAME_MV_MATRIX |
Model view matrix uniform. More... | |
static const char * | UNIFORM_NAME_MVP_MATRIX |
Model view projection uniform. More... | |
var | UNIFORM_NAME_MVP_MATRIX |
Model view projection uniform. More... | |
local | UNIFORM_NAME_MVP_MATRIX |
Model view projection uniform. More... | |
static const char * | UNIFORM_NAME_MULTIVIEW_MVP_MATRIX |
MultiView Model view projection uniform. More... | |
var | UNIFORM_NAME_MULTIVIEW_MVP_MATRIX |
MultiView Model view projection uniform. More... | |
local | UNIFORM_NAME_MULTIVIEW_MVP_MATRIX |
MultiView Model view projection uniform. More... | |
static const char * | UNIFORM_NAME_NORMAL_MATRIX |
Normal matrix uniform. More... | |
var | UNIFORM_NAME_NORMAL_MATRIX |
Normal matrix uniform. More... | |
local | UNIFORM_NAME_NORMAL_MATRIX |
Normal matrix uniform. More... | |
static const char * | UNIFORM_NAME_TIME |
Time uniform. More... | |
var | UNIFORM_NAME_TIME |
Time uniform. More... | |
local | UNIFORM_NAME_TIME |
Time uniform. More... | |
static const char * | UNIFORM_NAME_SIN_TIME |
Sin time uniform. More... | |
var | UNIFORM_NAME_SIN_TIME |
Sin time uniform. More... | |
local | UNIFORM_NAME_SIN_TIME |
Sin time uniform. More... | |
static const char * | UNIFORM_NAME_COS_TIME |
Cos time uniform. More... | |
var | UNIFORM_NAME_COS_TIME |
Cos time uniform. More... | |
local | UNIFORM_NAME_COS_TIME |
Cos time uniform. More... | |
static const char * | UNIFORM_NAME_RANDOM01 |
Random number uniform. More... | |
var | UNIFORM_NAME_RANDOM01 |
Random number uniform. More... | |
local | UNIFORM_NAME_RANDOM01 |
Random number uniform. More... | |
static const char * | UNIFORM_NAME_SAMPLER0 |
Sampler uniform 0-3, used for textures. | |
var | UNIFORM_NAME_SAMPLER0 |
Sampler uniform 0-3, used for textures. | |
local | UNIFORM_NAME_SAMPLER0 |
Sampler uniform 0-3, used for textures. | |
static const char * | UNIFORM_NAME_SAMPLER1 |
var | UNIFORM_NAME_SAMPLER1 |
local | UNIFORM_NAME_SAMPLER1 |
static const char * | UNIFORM_NAME_SAMPLER2 |
var | UNIFORM_NAME_SAMPLER2 |
local | UNIFORM_NAME_SAMPLER2 |
static const char * | UNIFORM_NAME_SAMPLER3 |
var | UNIFORM_NAME_SAMPLER3 |
local | UNIFORM_NAME_SAMPLER3 |
Built Attribute names | |
static const char * | ATTRIBUTE_NAME_COLOR |
Attribute color. More... | |
var | ATTRIBUTE_NAME_COLOR |
Attribute color. More... | |
local | ATTRIBUTE_NAME_COLOR |
Attribute color. More... | |
static const char * | ATTRIBUTE_NAME_POSITION |
Attribute position. More... | |
var | ATTRIBUTE_NAME_POSITION |
Attribute position. More... | |
local | ATTRIBUTE_NAME_POSITION |
Attribute position. More... | |
static const char * | ATTRIBUTE_NAME_TEX_COORD |
var | ATTRIBUTE_NAME_TEX_COORD |
local | ATTRIBUTE_NAME_TEX_COORD |
static const char * | ATTRIBUTE_NAME_TEX_COORD1 |
static const char * | ATTRIBUTE_NAME_TEX_COORD2 |
var | ATTRIBUTE_NAME_TEX_COORD2 |
local | ATTRIBUTE_NAME_TEX_COORD2 |
static const char * | ATTRIBUTE_NAME_TEX_COORD3 |
var | ATTRIBUTE_NAME_TEX_COORD3 |
local | ATTRIBUTE_NAME_TEX_COORD3 |
static GLProgram * | createWithByteArrays (const GLchar *vShaderByteArray, const GLchar *fShaderByteArray) |
local | initWithString. ( local vShaderByteArray, local fShaderByteArray) |
static GLProgram * | createWithByteArrays (const GLchar *vShaderByteArray, const GLchar *fShaderByteArray, const std::string &compileTimeHeaders, const std::string &compileTimeDefines) |
var | initWithString. ( var vShaderByteArray, var fShaderByteArray, var compileTimeHeaders, var compileTimeDefines) |
local | initWithString. ( local vShaderByteArray, local fShaderByteArray, local compileTimeHeaders, local compileTimeDefines) |
static GLProgram * | createWithFilenames (const std::string &vShaderFilename, const std::string &fShaderFilename) |
static GLProgram * | createWithFilenames (const std::string &vShaderFilename, const std::string &fShaderFilename, const std::string &compileTimeHeaders, const std::string &compileTimeDefines) |
var | init ( var vShaderFilename, var fShaderFilename, var compileTimeHeaders, var compileTimeDefines) |
local | init ( local vShaderFilename, local fShaderFilename, local compileTimeHeaders, local compileTimeDefines) |
Additional Inherited Members | |
Public Attributes inherited from Ref | |
unsigned int | _ID |
object id, ScriptSupport need public _ID | |
local | _ID |
object id, ScriptSupport need public _ID | |
int | _luaID |
Lua reference id. | |
local | _luaID |
Lua reference id. | |
void * | _scriptObject |
scriptObject, support for swift | |
local | _scriptObject |
scriptObject, support for swift | |
bool | _rooted |
When true, it means that the object was already rooted. | |
local | _rooted |
When true, it means that the object was already rooted. | |
GLProgram Class that implements a glProgram.
GLProgram | ( | ) |
Constructor.
var GLProgram | ( | ) |
Constructor.
local GLProgram | ( | ) |
Constructor.
|
virtual |
Destructor.
|
virtual |
Destructor.
|
virtual |
Destructor.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
|
static |
Create or Initializes the GLProgram with a vertex and fragment with bytes array, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames.
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
|
static |
Create or Initializes the GLProgram with a vertex and fragment with contents of filenames, with shader headers definition(eg. #version ... or #extension ...), with compileTimeDefines(eg. #define ...).
Uniform* getUniform | ( | const std::string & | name | ) |
Get the uniform or vertex attribute by string name in shader, return null if it does not exist.
var getUniform | ( | var | name | ) |
Get the uniform or vertex attribute by string name in shader, return null if it does not exist.
local getUniform | ( | local | name | ) |
Get the uniform or vertex attribute by string name in shader, return null if it does not exist.
void bindAttribLocation | ( | const std::string & | attributeName, |
GLuint | index | ||
) | const |
It will add a new attribute to the shader by calling glBindAttribLocation.
var bindAttribLocation | ( | var | attributeName, |
var | index | ||
) |
It will add a new attribute to the shader by calling glBindAttribLocation.
local bindAttribLocation | ( | local | attributeName, |
local | index | ||
) |
It will add a new attribute to the shader by calling glBindAttribLocation.
GLint getAttribLocation | ( | const std::string & | attributeName | ) | const |
Calls glGetAttribLocation.
var getAttribLocation | ( | var | attributeName | ) |
Calls glGetAttribLocation.
local getAttribLocation | ( | local | attributeName | ) |
Calls glGetAttribLocation.
GLint getUniformLocation | ( | const std::string & | attributeName | ) | const |
Calls glGetUniformLocation().
var getUniformLocation | ( | var | attributeName | ) |
Calls glGetUniformLocation().
local getUniformLocation | ( | local | attributeName | ) |
Calls glGetUniformLocation().
void updateUniforms | ( | ) |
It will create 4 uniforms:
And it will bind "GLProgram::UNIFORM_SAMPLER" to 0
var updateUniforms | ( | ) |
It will create 4 uniforms:
And it will bind "GLProgram::UNIFORM_SAMPLER" to 0
local updateUniforms | ( | ) |
It will create 4 uniforms:
And it will bind "GLProgram::UNIFORM_SAMPLER" to 0
GLint getUniformLocationForName | ( | const char * | name | ) | const |
calls retrieves the named uniform location for this shader program.
var getUniformLocationForName | ( | var | name | ) |
calls retrieves the named uniform location for this shader program.
local getUniformLocationForName | ( | local | name | ) |
calls retrieves the named uniform location for this shader program.
void setUniformLocationWith2i | ( | GLint | location, |
GLint | i1, | ||
GLint | i2 | ||
) |
calls glUniform2i only if the values are different than the previous call for this same shader program.
var setUniformLocationWith2i | ( | var | location, |
var | i1, | ||
var | i2 | ||
) |
calls glUniform2i only if the values are different than the previous call for this same shader program.
local setUniformLocationWith2i | ( | local | location, |
local | i1, | ||
local | i2 | ||
) |
calls glUniform2i only if the values are different than the previous call for this same shader program.
void setUniformLocationWith3i | ( | GLint | location, |
GLint | i1, | ||
GLint | i2, | ||
GLint | i3 | ||
) |
calls glUniform3i only if the values are different than the previous call for this same shader program.
var setUniformLocationWith3i | ( | var | location, |
var | i1, | ||
var | i2, | ||
var | i3 | ||
) |
calls glUniform3i only if the values are different than the previous call for this same shader program.
local setUniformLocationWith3i | ( | local | location, |
local | i1, | ||
local | i2, | ||
local | i3 | ||
) |
calls glUniform3i only if the values are different than the previous call for this same shader program.
void setUniformLocationWith4i | ( | GLint | location, |
GLint | i1, | ||
GLint | i2, | ||
GLint | i3, | ||
GLint | i4 | ||
) |
calls glUniform4i only if the values are different than the previous call for this same shader program.
var setUniformLocationWith4i | ( | var | location, |
var | i1, | ||
var | i2, | ||
var | i3, | ||
var | i4 | ||
) |
calls glUniform4i only if the values are different than the previous call for this same shader program.
local setUniformLocationWith4i | ( | local | location, |
local | i1, | ||
local | i2, | ||
local | i3, | ||
local | i4 | ||
) |
calls glUniform4i only if the values are different than the previous call for this same shader program.
void setUniformLocationWith2iv | ( | GLint | location, |
GLint * | ints, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform2iv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith2iv | ( | var | location, |
var | ints, | ||
var | numberOfArrays | ||
) |
calls glUniform2iv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith2iv | ( | local | location, |
local | ints, | ||
local | numberOfArrays | ||
) |
calls glUniform2iv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith3iv | ( | GLint | location, |
GLint * | ints, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform3iv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith3iv | ( | var | location, |
var | ints, | ||
var | numberOfArrays | ||
) |
calls glUniform3iv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith3iv | ( | local | location, |
local | ints, | ||
local | numberOfArrays | ||
) |
calls glUniform3iv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith4iv | ( | GLint | location, |
GLint * | ints, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform4iv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith4iv | ( | var | location, |
var | ints, | ||
var | numberOfArrays | ||
) |
calls glUniform4iv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith4iv | ( | local | location, |
local | ints, | ||
local | numberOfArrays | ||
) |
calls glUniform4iv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith1f | ( | GLint | location, |
GLfloat | f1 | ||
) |
calls glUniform1f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
local setUniformLocationWith1f | ( | local | location, |
local | f1 | ||
) |
calls glUniform1f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
void setUniformLocationWith2f | ( | GLint | location, |
GLfloat | f1, | ||
GLfloat | f2 | ||
) |
calls glUniform2f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
local setUniformLocationWith2f | ( | local | location, |
local | f1, | ||
local | f2 | ||
) |
calls glUniform2f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
void setUniformLocationWith3f | ( | GLint | location, |
GLfloat | f1, | ||
GLfloat | f2, | ||
GLfloat | f3 | ||
) |
calls glUniform3f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
local setUniformLocationWith3f | ( | local | location, |
local | f1, | ||
local | f2, | ||
local | f3 | ||
) |
calls glUniform3f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
void setUniformLocationWith4f | ( | GLint | location, |
GLfloat | f1, | ||
GLfloat | f2, | ||
GLfloat | f3, | ||
GLfloat | f4 | ||
) |
calls glUniform4f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
local setUniformLocationWith4f | ( | local | location, |
local | f1, | ||
local | f2, | ||
local | f3, | ||
local | f4 | ||
) |
calls glUniform4f only if the values are different than the previous call for this same shader program.
In js or lua,please use setUniformLocationF32
void setUniformLocationWith1fv | ( | GLint | location, |
const GLfloat * | floats, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniformfv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith1fv | ( | var | location, |
var | floats, | ||
var | numberOfArrays | ||
) |
calls glUniformfv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith1fv | ( | local | location, |
local | floats, | ||
local | numberOfArrays | ||
) |
calls glUniformfv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith2fv | ( | GLint | location, |
const GLfloat * | floats, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform2fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith2fv | ( | var | location, |
var | floats, | ||
var | numberOfArrays | ||
) |
calls glUniform2fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith2fv | ( | local | location, |
local | floats, | ||
local | numberOfArrays | ||
) |
calls glUniform2fv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith3fv | ( | GLint | location, |
const GLfloat * | floats, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform3fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith3fv | ( | var | location, |
var | floats, | ||
var | numberOfArrays | ||
) |
calls glUniform3fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith3fv | ( | local | location, |
local | floats, | ||
local | numberOfArrays | ||
) |
calls glUniform3fv only if the values are different than the previous call for this same shader program.
void setUniformLocationWith4fv | ( | GLint | location, |
const GLfloat * | floats, | ||
unsigned int | numberOfArrays | ||
) |
calls glUniform4fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWith4fv | ( | var | location, |
var | floats, | ||
var | numberOfArrays | ||
) |
calls glUniform4fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWith4fv | ( | local | location, |
local | floats, | ||
local | numberOfArrays | ||
) |
calls glUniform4fv only if the values are different than the previous call for this same shader program.
void setUniformLocationWithMatrix2fv |
( | GLint | location, |
const GLfloat * | matrixArray, | ||
unsigned int | numberOfMatrices | ||
) |
calls glUniformMatrix2fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWithMatrix2fv | ( | var | location, |
var | matrixArray, | ||
var | numberOfMatrices | ||
) |
calls glUniformMatrix2fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWithMatrix2fv |
( | local | location, |
local | matrixArray, | ||
local | numberOfMatrices | ||
) |
calls glUniformMatrix2fv only if the values are different than the previous call for this same shader program.
void setUniformLocationWithMatrix3fv |
( | GLint | location, |
const GLfloat * | matrixArray, | ||
unsigned int | numberOfMatrices | ||
) |
calls glUniformMatrix3fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWithMatrix3fv | ( | var | location, |
var | matrixArray, | ||
var | numberOfMatrices | ||
) |
calls glUniformMatrix3fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWithMatrix3fv |
( | local | location, |
local | matrixArray, | ||
local | numberOfMatrices | ||
) |
calls glUniformMatrix3fv only if the values are different than the previous call for this same shader program.
void setUniformLocationWithMatrix4fv |
( | GLint | location, |
const GLfloat * | matrixArray, | ||
unsigned int | numberOfMatrices | ||
) |
calls glUniformMatrix4fv only if the values are different than the previous call for this same shader program.
var setUniformLocationWithMatrix4fv | ( | var | location, |
var | matrixArray, | ||
var | numberOfMatrices | ||
) |
calls glUniformMatrix4fv only if the values are different than the previous call for this same shader program.
local setUniformLocationWithMatrix4fv |
( | local | location, |
local | matrixArray, | ||
local | numberOfMatrices | ||
) |
calls glUniformMatrix4fv only if the values are different than the previous call for this same shader program.
void setUniformsForBuiltins | ( | const Mat4 & | modelView | ) |
Update the builtin uniforms if they are different than the previous call for this same shader program.
modelView | modelView matrix applied to the built in uniform of the shader. |
var setUniformsForBuiltins | ( | var | modelView | ) |
Update the builtin uniforms if they are different than the previous call for this same shader program.
modelView | modelView matrix applied to the built in uniform of the shader. |
local setUniformsForBuiltins | ( | local | modelView | ) |
Update the builtin uniforms if they are different than the previous call for this same shader program.
modelView | modelView matrix applied to the built in uniform of the shader. |
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, but without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, but without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, but without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute, but include alpha test.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute, but include alpha test.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute, but include alpha test.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, include alpha test and without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, include alpha test and without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute, include alpha test and without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Color, Texture vertex attribute. texture coordinate will used as point size.
|
static |
Built in shader for 2d.
Support Position, Color, Texture vertex attribute. texture coordinate will used as point size.
|
static |
Built in shader for 2d.
Support Position, Color, Texture vertex attribute. texture coordinate will used as point size.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute, without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute, without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Color vertex attribute, without multiply vertex by MVP matrix.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute.
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute. with a specified uniform as color
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute. with a specified uniform as color
|
static |
Built in shader for 2d.
Support Position, Texture vertex attribute. with a specified uniform as color
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute. but alpha will be the multiplication of color attribute and texture.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute. but alpha will be the multiplication of color attribute and texture.
|
static |
Built in shader for 2d.
Support Position, Texture and Color vertex attribute. but alpha will be the multiplication of color attribute and texture.
|
static |
Built in shader for 2d.
Support Position, with color specified by a uniform.
|
static |
Built in shader for 2d.
Support Position, with color specified by a uniform.
|
static |
Built in shader for 2d.
Support Position, with color specified by a uniform.
|
static |
Built in shader for draw a sector with 90 degrees with center at bottom left point.
|
static |
Built in shader for draw a sector with 90 degrees with center at bottom left point.
|
static |
Built in shader for draw a sector with 90 degrees with center at bottom left point.
|
static |
Built in shader for label and label with effects.
|
static |
Built in shader for label and label with effects.
|
static |
Built in shader for label and label with effects.
|
static |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Texture vertex attribute, with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position and Normal vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position, Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Built in shader used for 3D, support Position(skeletal animation by hardware skin), Bumped Normal, Texture vertex attribute, used in lighting.
with color specified by a uniform.
|
static |
Ambient Color uniform.
|
static |
Ambient Color uniform.
|
static |
Ambient Color uniform.
|
static |
Projection Matrix uniform.
|
static |
Projection Matrix uniform.
|
static |
Projection Matrix uniform.
|
static |
MultiView Projection Matrix uniform.
|
static |
MultiView Projection Matrix uniform.
|
static |
MultiView Projection Matrix uniform.
|
static |
Model view matrix uniform.
|
static |
Model view matrix uniform.
|
static |
Model view matrix uniform.
|
static |
Model view projection uniform.
|
static |
Model view projection uniform.
|
static |
Model view projection uniform.
|
static |
MultiView Model view projection uniform.
|
static |
MultiView Model view projection uniform.
|
static |
MultiView Model view projection uniform.
|
static |
Normal matrix uniform.
|
static |
Normal matrix uniform.
|
static |
Normal matrix uniform.
|
static |
Time uniform.
|
static |
Time uniform.
|
static |
Time uniform.
|
static |
Sin time uniform.
|
static |
Sin time uniform.
|
static |
Sin time uniform.
|
static |
Cos time uniform.
|
static |
Cos time uniform.
|
static |
Cos time uniform.
|
static |
Random number uniform.
|
static |
Random number uniform.
|
static |
Random number uniform.
|
static |
Alpha test value uniform.
|
static |
Alpha test value uniform.
|
static |
Alpha test value uniform.
|
static |
Attribute color.
|
static |
Attribute color.
|
static |
Attribute color.
|
static |
Attribute position.
|
static |
Attribute position.
|
static |
Attribute position.
|
static |
Attribute Texcoord 0-3.
|
static |
Attribute Texcoord 0-3.
|
static |
Attribute Texcoord 0-3.
|
static |
Attribute normal.
|
static |
Attribute normal.
|
static |
Attribute normal.
|
static |
Attribute blend weight.
|
static |
Attribute blend weight.
|
static |
Attribute blend weight.
|
static |
Attribute blend index.
|
static |
Attribute blend index.
|
static |
Attribute blend index.
|
static |
Attribute blend tangent.
|
static |
Attribute blend tangent.
|
static |
Attribute blend tangent.
|
static |
Attribute blend binormal.
|
static |
Attribute blend binormal.
|
static |
Attribute blend binormal.