28 #ifndef __GLSLESProgramCommon_H__
29 #define __GLSLESProgramCommon_H__
39 class GLSLESGpuProgram;
42 struct GLUniformReference
87 void buildGLUniformReferences(
void);
93 #define NULL_CUSTOM_ATTRIBUTES_INDEX -2
94 #define NOT_FOUND_CUSTOM_ATTRIBUTES_INDEX -1
99 void getMicrocodeFromCache(
void);
101 virtual void compileAndLink(
void) = 0;
103 virtual void _useProgram(
void) = 0;
118 virtual void activate(
void) = 0;
161 #endif // __GLSLESProgramCommon_H__
GLES2UniformCache * getUniformCache(void)
std::vector< GLUniformReference, A > type
SemanticToStringMap mSemanticTypeMap
GpuProgramType
Enumerates the types of programs which can run on the GPU.
GLSLESGpuProgram * getFragmentProgram(void) const
map< String, VertexElementSemantic >::type SemanticToStringMap
GLUniformBufferList mGLUniformBufferReferences
Container of uniform buffer references that are active in the program object.
GLSLESGpuProgram * mVertexProgram
Linked vertex program.
bool mUniformRefsBuilt
Flag to indicate that uniform references have already been built.
VertexElementSemantic
Vertex element semantics, used to identify the meaning of vertex buffer contents. ...
GLUniformReferenceList mGLUniformReferences
Container of uniform references that are active in the program object.
bool mSkeletalAnimation
Flag indicating skeletal animation is being performed.
#define OGRE_MAX_TEXTURE_COORD_SETS
Define number of texture coordinate sets allowed per vertex.
GLES2UniformCache * mUniformCache
GLSLESGpuProgram * getVertexProgram(void) const
vector< HardwareUniformBufferSharedPtr >::type GLUniformBufferList
GLUniformBufferList::iterator GLUniformBufferIterator
GLUniformReferenceList::iterator GLUniformReferenceIterator
void setSkeletalAnimationIncluded(bool included)
Sets whether the linked program includes the required instructions to perform skeletal animation...
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...
GLint mLinked
Flag indicating that the program or pipeline object has been successfully linked. ...
GLSL ES low level compiled shader object - this class is used to get at the linked program object and...
C++ encapsulation of GLSL ES Program Object.
GLuint mGLProgramHandle
GL handle for the program object.
bool isSkeletalAnimationIncluded(void) const
Returns whether the linked program includes the required instructions to perform skeletal animation...
vector< GLUniformReference >::type GLUniformReferenceList
set< GLuint >::type AttributeSet
The number of VertexElementSemantic elements (note - the first value VES_POSITION is 1) ...
GLSLESGpuProgram * mFragmentProgram
Linked fragment program.
GLuint getGLProgramHandle(void) const
Get the GL Handle for the program object.
bool mTriedToLinkAndFailed
Flag indicating that the program or pipeline object has tried to link and failed. ...