Specialisation of HighLevelGpuProgram to provide support for OpenGL Shader Language (GLSL ES) for OpenGL ES 2.0.
More...
#include <OgreGLSLESProgram.h>
Specialisation of HighLevelGpuProgram to provide support for OpenGL Shader Language (GLSL ES) for OpenGL ES 2.0.
Definition at line 50 of file OgreGLSLESProgram.h.
◆ GLSLESProgram()
◆ ~GLSLESProgram()
Ogre::GLSLESProgram::~GLSLESProgram |
( |
| ) |
|
◆ attachToProgramObject()
void Ogre::GLSLESProgram::attachToProgramObject |
( |
const GLuint |
programObject | ) |
|
◆ buildConstantDefinitions()
void Ogre::GLSLESProgram::buildConstantDefinitions |
( |
| ) |
const |
|
protected |
Populate the passed parameters with name->index map, must be overridden.
◆ checkAndFixInvalidDefaultPrecisionError()
void Ogre::GLSLESProgram::checkAndFixInvalidDefaultPrecisionError |
( |
String & |
message | ) |
|
|
protected |
check the compile result for an error with default precision - and recompile if needed.
some glsl compilers return an error default precision is set to types other then int or float, this function test a failed compile result for the error, delete the needed lines from the source if needed then try to re-compile.
◆ compile()
bool Ogre::GLSLESProgram::compile |
( |
const bool |
checkErrors = false | ) |
|
compile source into shader object
◆ createLowLevelImpl()
void Ogre::GLSLESProgram::createLowLevelImpl |
( |
void |
| ) |
|
|
protected |
Internal method for creating a dummy low-level program for this high-level program.
GLSL ES does not give access to the low level implementation of the shader so this method creates an object sub-classed from GLES2GpuProgram just to be compatible with GLES2RenderSystem.
◆ createParameters()
◆ detachFromProgramObject()
void Ogre::GLSLESProgram::detachFromProgramObject |
( |
const GLuint |
programObject | ) |
|
◆ getGLProgramHandle()
GLuint Ogre::GLSLESProgram::getGLProgramHandle |
( |
| ) |
const |
◆ getGLShaderHandle()
GLuint Ogre::GLSLESProgram::getGLShaderHandle |
( |
| ) |
const |
◆ getIsOptimised()
bool Ogre::GLSLESProgram::getIsOptimised |
( |
void |
| ) |
|
◆ getLanguage()
const String& Ogre::GLSLESProgram::getLanguage |
( |
void |
| ) |
const |
◆ getOptimisedSource()
String Ogre::GLSLESProgram::getOptimisedSource |
( |
void |
| ) |
|
◆ getOptimiserEnabled()
bool Ogre::GLSLESProgram::getOptimiserEnabled |
( |
void |
| ) |
const |
◆ getPassFogStates()
bool Ogre::GLSLESProgram::getPassFogStates |
( |
void |
| ) |
const |
◆ getPassSurfaceAndLightStates()
bool Ogre::GLSLESProgram::getPassSurfaceAndLightStates |
( |
void |
| ) |
const |
◆ getPassTransformStates()
bool Ogre::GLSLESProgram::getPassTransformStates |
( |
void |
| ) |
const |
◆ getPreprocessorDefines()
const String& Ogre::GLSLESProgram::getPreprocessorDefines |
( |
void |
| ) |
const |
Sets the preprocessor defines use to compile the program.
Definition at line 89 of file OgreGLSLESProgram.h.
◆ loadFromSource()
void Ogre::GLSLESProgram::loadFromSource |
( |
void |
| ) |
|
|
protected |
Internal load implementation, must be implemented by subclasses.
◆ notifyOnContextLost()
virtual void Ogre::GLSLESProgram::notifyOnContextLost |
( |
| ) |
|
|
protectedvirtual |
◆ populateParameterNames()
Populate the passed parameters with name->index map.
◆ setIsOptimised()
void Ogre::GLSLESProgram::setIsOptimised |
( |
bool |
flag | ) |
|
◆ setOptimisedSource()
void Ogre::GLSLESProgram::setOptimisedSource |
( |
const String & |
src | ) |
|
◆ setOptimiserEnabled()
void Ogre::GLSLESProgram::setOptimiserEnabled |
( |
bool |
enabled | ) |
|
Sets if the GLSL optimiser is enabled.
◆ setPreprocessorDefines()
void Ogre::GLSLESProgram::setPreprocessorDefines |
( |
const String & |
defines | ) |
|
Sets the preprocessor defines use to compile the program.
Definition at line 87 of file OgreGLSLESProgram.h.
◆ unloadHighLevelImpl()
void Ogre::GLSLESProgram::unloadHighLevelImpl |
( |
void |
| ) |
|
|
protected |
Internal unload implementation, must be implemented by subclasses.
◆ unloadImpl()
void Ogre::GLSLESProgram::unloadImpl |
( |
void |
| ) |
|
|
protected |
◆ mCompiled
GLint Ogre::GLSLESProgram::mCompiled |
|
private |
◆ mGLProgramHandle
GLuint Ogre::GLSLESProgram::mGLProgramHandle |
|
private |
◆ mGLShaderHandle
GLuint Ogre::GLSLESProgram::mGLShaderHandle |
|
private |
◆ mIsOptimised
bool Ogre::GLSLESProgram::mIsOptimised |
|
private |
Flag indicating if shader has been successfully optimised.
Definition at line 162 of file OgreGLSLESProgram.h.
◆ mOptimisedSource
String Ogre::GLSLESProgram::mOptimisedSource |
|
private |
The optmised source of the program (may be blank until the shader is optmisied)
Definition at line 165 of file OgreGLSLESProgram.h.
◆ mOptimiserEnabled
bool Ogre::GLSLESProgram::mOptimiserEnabled |
|
private |
◆ mPreprocessorDefines
String Ogre::GLSLESProgram::mPreprocessorDefines |
|
private |
◆ msCmdOptimisation
◆ msCmdPreprocessorDefines
The documentation for this class was generated from the following file: