![]() |
OGRE
2.1.0unstable
Object-Oriented Graphics Rendering Engine
|
C++ encapsulation of GLSL Program Object. More...
#include <OgreGLSLProgramCommon.h>
Inheritance diagram for Ogre::GLSLProgramCommon:Public Member Functions | |
| GLSLProgramCommon (GLSLGpuProgram *vertexProgram, GLSLGpuProgram *geometryProgram, GLSLGpuProgram *fragmentProgram, GLSLGpuProgram *hullProgram, GLSLGpuProgram *domainProgram, GLSLGpuProgram *computeProgram) | |
| Constructor should only be used by GLSLLinkProgramManager and GLSLProgramPipelineManager. More... | |
| virtual | ~GLSLProgramCommon (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... | |
| GLSLGpuProgram * | getComputeProgram () const |
| GLSLGpuProgram * | getDomainProgram () const |
| GLSLGpuProgram * | getFragmentProgram () const |
| GLSLGpuProgram * | getGeometryProgram () const |
| GLuint | getGLProgramHandle (void) const |
| Get the GL Handle for the program object. More... | |
| GLSLGpuProgram * | getHullProgram () const |
| GL3PlusVertexArrayObject * | getVertexArrayObject () |
| GLSLGpuProgram * | getVertexProgram () 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 Program Object.
| Ogre::GLSLProgramCommon::GLSLProgramCommon | ( | GLSLGpuProgram * | vertexProgram, |
| GLSLGpuProgram * | geometryProgram, | ||
| GLSLGpuProgram * | fragmentProgram, | ||
| GLSLGpuProgram * | hullProgram, | ||
| GLSLGpuProgram * | domainProgram, | ||
| GLSLGpuProgram * | computeProgram | ||
| ) |
Constructor should only be used by GLSLLinkProgramManager and GLSLProgramPipelineManager.
|
virtual |
|
pure virtual |
Makes a program object active by making sure it is linked and then putting it in use.
Implemented in Ogre::GLSLProgramPipeline, and Ogre::GLSLLinkProgram.
|
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::GLSLProgramPipeline.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Get the GL Handle for the program object.
|
inline |
|
inline |
|
inline |
| bool Ogre::GLSLProgramCommon::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 GLSLGpuProgram::bindMultiPassParameters() just before multi pass rendering occurs.
Implemented in Ogre::GLSLProgramPipeline, and Ogre::GLSLLinkProgram.
|
pure virtual |
Updates program object uniform blocks using data from GpuProgramParameters.
normally called by GLSLGpuProgram::bindParameters() just before rendering occurs.
Implemented in Ogre::GLSLProgramPipeline, and Ogre::GLSLLinkProgram.
|
pure virtual |
Updates program object uniforms using data from GpuProgramParameters.
normally called by GLSLGpuProgram::bindParameters() just before rendering occurs.
Implemented in Ogre::GLSLProgramPipeline, and Ogre::GLSLLinkProgram.