|  | OGRE
    1.11.6
    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.  More... | |
| ~GLSLMonolithicProgram (void) | |
| void | activate (void) | 
| Makes a program object active by making sure it is linked and then putting it in use.  More... | |
| void | bindFixedAttributes (GLuint program) | 
| void | extractLayoutQualifiers (void) | 
| GLSLShader * | getComputeShader () const | 
| GLSLShader * | getDomainShader () const | 
| GLSLShader * | getFragmentShader () const | 
| GLSLShader * | getGeometryShader () const | 
| uint | getGLProgramHandle (void) const | 
| Get the GL Handle for the program object.  More... | |
| GLSLShader * | getHullShader () const | 
| GLSLShader * | getVertexShader () const | 
| bool | isSkeletalAnimationIncluded (void) const | 
| Returns whether the linked program includes the required instructions to perform skeletal animation.  More... | |
| bool | isUsingShader (GLSLShaderCommon *shader) const | 
| query if the program is using the given shader  More... | |
| void | setSkeletalAnimationIncluded (bool included) | 
| Sets whether the linked program includes the required instructions to perform skeletal animation.  More... | |
| void | setTransformFeedbackVaryings (const std::vector< String > &nameStrings) | 
| void | updateAtomicCounters (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType) | 
| void | updatePassIterationUniforms (GpuProgramParametersSharedPtr params) | 
| Updates program object uniforms using data from pass iteration GpuProgramParameters.  More... | |
| void | updateUniformBlocks (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType) | 
| Updates program object uniform blocks using data from GpuProgramParameters.  More... | |
| void | updateUniforms (GpuProgramParametersSharedPtr params, uint16 mask, GpuProgramType fromProgType) | 
| Updates program object uniforms using data from GpuProgramParameters.  More... | |
| Static Public Member Functions | |
| static int32 | getFixedAttributeIndex (VertexElementSemantic semantic, uint index) | 
| Get the fixed attribute bindings normally used by GL for a semantic.  More... | |
| static void | useTightAttributeLayout () | 
| use alternate vertex attribute layout using only 8 vertex attributes  More... | |
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.
| Ogre::GLSLMonolithicProgram::~GLSLMonolithicProgram | ( | void | ) | 
| 
 | virtual | 
Makes a program object active by making sure it is linked and then putting it in use.
Implements Ogre::GLSLProgramCommon.
| 
 | virtual | 
Updates program object uniforms using data from GpuProgramParameters.
normally called by GLSLShader::bindParameters() just before rendering occurs.
Implements Ogre::GLSLProgramCommon.
| 
 | virtual | 
Updates program object uniform blocks using data from GpuProgramParameters.
normally called by GLSLShader::bindParameters() just before rendering occurs.
Implements Ogre::GLSLProgramCommon.
| 
 | virtual | 
Updates program object uniforms using data from pass iteration GpuProgramParameters.
normally called by GLSLShader::bindMultiPassParameters() just before multi pass rendering occurs.
Implements Ogre::GLSLProgramCommon.
| 
 | inlinevirtual | 
Implements Ogre::GLSLProgram.
| 
 | inherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlinevirtualinherited | 
query if the program is using the given shader
Implements Ogre::GLSLProgramCommon.
| 
 | inherited | 
| 
 | inherited | 
| 
 | inlineinherited | 
Sets whether the linked program includes the required instructions to perform skeletal animation.
| 
 | inlineinherited | 
Returns whether the linked program includes the required instructions to perform skeletal animation.
| 
 | inlineinherited | 
Get the GL Handle for the program object.
References OGRE_MAX_TEXTURE_COORD_SETS, and Ogre::VES_COUNT.
| 
 | staticinherited | 
Get the fixed attribute bindings normally used by GL for a semantic.
| 
 | staticinherited | 
use alternate vertex attribute layout using only 8 vertex attributes
For "Vivante GC1000" and "VideoCore IV" (notably in Raspberry Pi) on GLES2