OGRE 2.1
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. | |
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. | |
virtual void | extractLayoutQualifiers (void) |
Finds layout qualifiers in the shader source and sets attribute indices appropriately. | |
virtual GLint | getAttributeIndex (VertexElementSemantic semantic, uint index) |
Get the index of a non-standard attribute bound in the linked code. | |
GLint | getBaseInstanceLocation () const |
GLSLESShader * | getFragmentShader () const |
GLuint | getGLProgramHandle (void) const |
Get the GL Handle for the program object. | |
GLSLESShader * | getVertexShader () const |
bool | isAttributeValid (VertexElementSemantic semantic, uint index) |
Is a non-standard attribute bound in the linked code? | |
bool | isSkeletalAnimationIncluded (void) const |
Returns whether the linked program includes the required instructions to perform skeletal animation. | |
void | setSkeletalAnimationIncluded (bool included) |
Sets whether the linked program includes the required instructions to perform skeletal animation. | |
virtual void | updatePassIterationUniforms (GpuProgramParametersSharedPtr params)=0 |
Updates program object uniforms using data from pass iteration GpuProgramParameters. | |
virtual void | updateUniformBlocks (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType)=0 |
Updates program object uniform blocks using data from GpuProgramParameters. | |
virtual void | updateUniforms (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType)=0 |
Updates program object uniforms using data from GpuProgramParameters. | |
C++ encapsulation of GLSL ES Program Object.
Ogre::GLSLESProgramCommon::GLSLESProgramCommon | ( | GLSLESShader * | vertexProgram, |
GLSLESShader * | fragmentProgram | ||
) |
Constructor should only be used by GLSLESLinkProgramManager and GLSLESProgramPipelineManager.
Makes a program object active by making sure it is linked and then putting it in use.
Implemented in Ogre::GLSLESProgramPipeline.
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 |
|
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?
Returns whether the linked program includes the required instructions to perform skeletal animation.
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.