|  | OGRE-Next 3.0.0
    Object-Oriented Graphics Rendering Engine | 
Model of OpenGL program object created using the glLinkProgram method of linking. More...
#include <OgreGLSLMonolithicProgram.h>
 Inheritance diagram for Ogre::GLSLMonolithicProgram:
 Inheritance diagram for Ogre::GLSLMonolithicProgram:| Public Member Functions | |
| GLSLMonolithicProgram (GLSLShader *vertexProgram, GLSLShader *hullProgram, GLSLShader *domainProgram, GLSLShader *geometryProgram, GLSLShader *fragmentProgram, GLSLShader *computeProgram) | |
| Constructor should only be used by GLSLMonolithicProgramManager. | |
| ~GLSLMonolithicProgram () override | |
| void | activate () override | 
| Makes a program object active by making sure it is linked and then putting it in use. | |
| void | updatePassIterationUniforms (GpuProgramParametersSharedPtr params) override | 
| Updates program object uniforms using data from pass iteration GpuProgramParameters. | |
| void | updateUniforms (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType) override | 
| Updates program object uniforms using data from GpuProgramParameters. | |
|  Public Member Functions inherited from Ogre::GLSLProgram | |
| GLSLProgram (GLSLShader *vertexProgram, GLSLShader *hullProgram, GLSLShader *domainProgram, GLSLShader *geometryProgram, GLSLShader *fragmentProgram, GLSLShader *computeProgram) | |
| Constructor should only be used by GLSLMonolithicProgramManager and GLSLSeparableProgramManager. | |
| virtual | ~GLSLProgram () | 
| virtual void | extractLayoutQualifiers () | 
| 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. | |
| GLSLShader * | getComputeShader () const | 
| GLSLShader * | getDomainShader () const | 
| GLSLShader * | getFragmentShader () const | 
| GLSLShader * | getGeometryShader () const | 
| GLuint | getGLProgramHandle () const | 
| Get the GL Handle for the program object. | |
| GLSLShader * | getHullShader () const | 
| GL3PlusOldVertexArrayObject * | getVertexArrayObject () | 
| GLSLShader * | getVertexShader () const | 
| bool | isAttributeValid (VertexElementSemantic semantic, uint index) | 
| Is a non-standard attribute bound in the linked code? | |
| bool | isSkeletalAnimationIncluded () 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. | |
| Additional Inherited Members | |
|  Public Attributes inherited from Ogre::GLSLProgram | |
| GLint | mBaseInstanceLocation | 
Model of OpenGL program object created using the glLinkProgram method of linking.
Linking using glLinkProgram is supported by OpenGL 2.0 and up, but does not allow hot-swapping shaders without recompiling the program object like GLSLSeparableProgram can. Hence the name 'monolithic'.
| Ogre::GLSLMonolithicProgram::GLSLMonolithicProgram | ( | GLSLShader * | vertexProgram, | 
| GLSLShader * | hullProgram, | ||
| GLSLShader * | domainProgram, | ||
| GLSLShader * | geometryProgram, | ||
| GLSLShader * | fragmentProgram, | ||
| GLSLShader * | computeProgram | ||
| ) | 
Constructor should only be used by GLSLMonolithicProgramManager.
| 
 | override | 
| 
 | overridevirtual | 
Makes a program object active by making sure it is linked and then putting it in use.
Implements Ogre::GLSLProgram.
| 
 | overridevirtual | 
Updates program object uniforms using data from pass iteration GpuProgramParameters.
normally called by GLSLShader::bindMultiPassParameters() just before multi pass rendering occurs.
Implements Ogre::GLSLProgram.
| 
 | overridevirtual | 
Updates program object uniforms using data from GpuProgramParameters.
normally called by GLSLShader::bindParameters() just before rendering occurs.
Implements Ogre::GLSLProgram.