OGRE
2.2.4
Object-Oriented Graphics Rendering Engine
|
C++ encapsulation of GLSL ES Program Object. More...
#include <OgreGLSLESProgramCommon.h>
Public Member Functions | |
GLSLESProgramCommon (GLSLESShader *vertexProgram, GLSLESShader *fragmentProgram) | |
Constructor should only be used by GLSLESLinkProgramManager and GLSLESProgramPipelineManager. More... | |
virtual | ~GLSLESProgramCommon (void) |
virtual void | activate (void)=0 |
Makes a program object active by making sure it is linked and then putting it in use. More... | |
virtual void | extractLayoutQualifiers (void) |
Finds layout qualifiers in the shader source and sets attribute indices appropriately. More... | |
virtual GLint | getAttributeIndex (VertexElementSemantic semantic, uint index) |
Get the index of a non-standard attribute bound in the linked code. More... | |
GLint | getBaseInstanceLocation () const |
GLSLESShader * | getFragmentShader () const |
GLuint | getGLProgramHandle (void) const |
Get the GL Handle for the program object. More... | |
GLSLESShader * | getVertexShader () const |
bool | isAttributeValid (VertexElementSemantic semantic, uint index) |
Is a non-standard attribute bound in the linked code? More... | |
bool | isSkeletalAnimationIncluded (void) const |
Returns whether the linked program includes the required instructions to perform skeletal animation. More... | |
void | setSkeletalAnimationIncluded (bool included) |
Sets whether the linked program includes the required instructions to perform skeletal animation. More... | |
virtual void | updatePassIterationUniforms (GpuProgramParametersSharedPtr params)=0 |
Updates program object uniforms using data from pass iteration GpuProgramParameters. More... | |
virtual void | updateUniformBlocks (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType)=0 |
Updates program object uniform blocks using data from GpuProgramParameters. More... | |
virtual void | updateUniforms (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType)=0 |
Updates program object uniforms using data from GpuProgramParameters. More... | |
C++ encapsulation of GLSL ES Program Object.
Ogre::GLSLESProgramCommon::GLSLESProgramCommon | ( | GLSLESShader * | vertexProgram, |
GLSLESShader * | fragmentProgram | ||
) |
Constructor should only be used by GLSLESLinkProgramManager and GLSLESProgramPipelineManager.
|
virtual |
|
pure virtual |
Makes a program object active by making sure it is linked and then putting it in use.
Implemented in Ogre::GLSLESProgramPipeline.
|
virtual |
Finds layout qualifiers in the shader source and sets attribute indices appropriately.
|
virtual |
Get the index of a non-standard attribute bound in the linked code.
Reimplemented in Ogre::GLSLESProgramPipeline.
|
inline |
References OGRE_MAX_TEXTURE_COORD_SETS, and Ogre::VES_COUNT.
|
inline |
|
inline |
Get the GL Handle for the program object.
|
inline |
bool Ogre::GLSLESProgramCommon::isAttributeValid | ( | VertexElementSemantic | semantic, |
uint | index | ||
) |
Is a non-standard attribute bound in the linked code?
|
inline |
Returns whether the linked program includes the required instructions to perform skeletal animation.
|
inline |
Sets whether the linked program includes the required instructions to perform skeletal animation.
|
pure virtual |
Updates program object uniforms using data from pass iteration GpuProgramParameters.
Normally called by GLSLESShader::bindMultiPassParameters() just before multi pass rendering occurs.
Implemented in Ogre::GLSLESProgramPipeline.
|
pure virtual |
Updates program object uniform blocks using data from GpuProgramParameters.
Normally called by GLSLESShader::bindParameters() just before rendering occurs.
Implemented in Ogre::GLSLESProgramPipeline.
|
pure virtual |
Updates program object uniforms using data from GpuProgramParameters.
Normally called by GLSLESShader::bindParameters() just before rendering occurs.
Implemented in Ogre::GLSLESProgramPipeline.