OGRE 14.2
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::GLSLProgramCommon Class Referenceabstract

#include <OgreGLSLProgramCommon.h>

+ Inheritance diagram for Ogre::GLSLProgramCommon:

Public Member Functions

 GLSLProgramCommon (const GLShaderList &shaders)
 
virtual ~GLSLProgramCommon ()
 
virtual void activate (void)=0
 Makes a program object active by making sure it is linked and then putting it in use.
 
uint getGLProgramHandle (void) const
 Get the GL Handle for the program object.
 
bool isUsingShader (GLSLShaderCommon *shader) const
 query if the program is using the given shader
 
virtual void updateUniforms (GpuProgramParametersPtr params, uint16 mask, GpuProgramType fromProgType)=0
 Updates program object uniforms using data from GpuProgramParameters.
 

Static Public Member Functions

static int32 getFixedAttributeIndex (VertexElementSemantic semantic, uint index)
 Get the fixed attribute bindings normally used by GL for a semantic.
 
static void useTightAttributeLayout ()
 use alternate vertex attribute layout using only 8 vertex attributes
 

Constructor & Destructor Documentation

◆ GLSLProgramCommon()

Ogre::GLSLProgramCommon::GLSLProgramCommon ( const GLShaderList & shaders)
explicit

◆ ~GLSLProgramCommon()

virtual Ogre::GLSLProgramCommon::~GLSLProgramCommon ( )
inlinevirtual

Member Function Documentation

◆ getGLProgramHandle()

uint Ogre::GLSLProgramCommon::getGLProgramHandle ( void ) const
inline

Get the GL Handle for the program object.

◆ activate()

virtual void Ogre::GLSLProgramCommon::activate ( void )
pure virtual

Makes a program object active by making sure it is linked and then putting it in use.

Implemented in Ogre::GLSL::GLSLLinkProgram, Ogre::GLSLESLinkProgram, Ogre::GLSLESProgramPipeline, Ogre::GLSLMonolithicProgram, and Ogre::GLSLSeparableProgram.

◆ isUsingShader()

bool Ogre::GLSLProgramCommon::isUsingShader ( GLSLShaderCommon * shader) const
inline

query if the program is using the given shader

References Ogre::GpuProgram::getType().

◆ updateUniforms()

virtual void Ogre::GLSLProgramCommon::updateUniforms ( GpuProgramParametersPtr params,
uint16 mask,
GpuProgramType fromProgType )
pure virtual

Updates program object uniforms using data from GpuProgramParameters.

Normally called by GLSLShader::bindParameters() just before rendering occurs.

Implemented in Ogre::GLSL::GLSLLinkProgram, Ogre::GLSLESLinkProgram, Ogre::GLSLESProgramPipeline, Ogre::GLSLMonolithicProgram, and Ogre::GLSLSeparableProgram.

◆ getFixedAttributeIndex()

static int32 Ogre::GLSLProgramCommon::getFixedAttributeIndex ( VertexElementSemantic semantic,
uint index )
static

Get the fixed attribute bindings normally used by GL for a semantic.

◆ useTightAttributeLayout()

static void Ogre::GLSLProgramCommon::useTightAttributeLayout ( )
static

use alternate vertex attribute layout using only 8 vertex attributes

For "Vivante GC1000" and "VideoCore IV" (notably in Raspberry Pi) on GLES2


The documentation for this class was generated from the following file: