28 #ifndef __GLSLESProgram_H__
29 #define __GLSLESProgram_H__
52 #if !OGRE_NO_GLES2_GLSL_OPTIMISER
57 String doGet(
const void* target)
const;
58 void doSet(
void* target,
const String& val);
65 String doGet(
const void* target)
const;
66 void doSet(
void* target,
const String& val);
76 void attachToProgramObject(
const GLuint programObject );
77 void detachFromProgramObject(
const GLuint programObject );
81 bool getPassTransformStates(
void)
const;
82 bool getPassSurfaceAndLightStates(
void)
const;
83 bool getPassFogStates(
void)
const;
90 #if !OGRE_NO_GLES2_GLSL_OPTIMISER
91 void setOptimiserEnabled(
bool enabled) { mOptimiserEnabled = enabled; }
103 const String& getLanguage(
void)
const;
108 bool compile(
const bool checkErrors =
false);
112 #if !OGRE_NO_GLES2_GLSL_OPTIMISER
118 void loadFromSource(
void);
124 void createLowLevelImpl(
void);
126 void unloadHighLevelImpl(
void);
128 void unloadImpl(
void);
133 void buildConstantDefinitions()
const;
139 void checkAndFixInvalidDefaultPrecisionError(
String &message );
150 #if !OGRE_NO_GLES2_GLSL_OPTIMISER
156 #endif // __GLSLESProgram_H__
Command object for setting macro defines.
GLuint mGLShaderHandle
GL handle for shader object.
Interface describing a manual resource loader.
bool getIsOptimised(void)
Gets if the GLSL source has been optimised successfully.
bool mIsOptimised
Flag indicating if shader has been successfully optimised.
GLint mCompiled
Flag indicating if shader object successfully compiled.
Specialisation of HighLevelGpuProgram to provide support for OpenGL Shader Language (GLSL ES) for Ope...
void setPreprocessorDefines(const String &defines)
Sets the preprocessor defines use to compile the program.
GLuint getGLProgramHandle() const
unsigned long long int ResourceHandle
static CmdPreprocessorDefines msCmdPreprocessorDefines
GLuint getGLShaderHandle() const
GL Shader Handle.
Defines a generic resource handler.
static CmdOptimisation msCmdOptimisation
const String & getPreprocessorDefines(void) const
Sets the preprocessor defines use to compile the program.
Abstract base class representing a high-level program (a vertex or fragment program).
void setIsOptimised(bool flag)
Sets if the GLSL source has been optimised successfully.
String mPreprocessorDefines
Preprocessor options.
Command object for running the GLSL optimiser.
bool getOptimiserEnabled(void) const
Gets if the GLSL optimiser is enabled.
Abstract class which is command object which gets/sets parameters.