#include <CShaders.h>
Inheritance diagram for cGLSLShader:
Public Member Functions | |
cGLSLShader () | |
Constructor of cGLSLShader. | |
~cGLSLShader () | |
Destructor of cGLSLShader. | |
GLhandleARB | getProgramHandle () const |
Returns the program handle (for setting uniform variables). | |
Protected Member Functions | |
virtual void | uninitializeShaders () |
Called when we need to clean up shaders; e.g. when new shaders are being loaded. | |
virtual int | initializeFragmentShader () |
Called to create a fragment shader from m_fragmentShaderString. | |
virtual int | uninitializeFragmentShader () |
Called to clean up a fragment shader. | |
virtual int | initializeVertexShader () |
Called to create a vertex shader from m_vertexShaderString. | |
virtual int | uninitializeVertexShader () |
Called to clean up a vertex shader. | |
int | initializeProgram () |
Creates the shader program object. | |
void | uninitializeProgram () |
Cleans up the shader program object (detaches the shaders and deletes the object). | |
virtual void | enableShaders () |
virtual void | disableShaders () |
Protected Attributes | |
bool | m_programInitialized |
Has my program object been initialized? | |
GLhandleARB | m_hFShader |
Handles for the fragment and vertex shaders and the program object. |
cGLSLShader::cGLSLShader | ( | ) |
Constructor of cGLSLShader.
Constructor of cGLSLShader
cGLSLShader::~cGLSLShader | ( | ) |
Destructor of cGLSLShader.
Destructor of cGLSLShader
void cGLSLShader::uninitializeShaders | ( | ) | [protected, virtual] |
Called when we need to clean up shaders; e.g. when new shaders are being loaded.
Uninitializes the ARB handles associated w/this object by calling the uninit methods for the program, fragment, and vertex handles
Reimplemented from cGenericShader.
int cGLSLShader::initializeFragmentShader | ( | ) | [protected, virtual] |
Called to create a fragment shader from m_fragmentShaderString.
Initializes the ARB fragment shader handle associated w/this shader
Reimplemented from cGenericShader.
int cGLSLShader::uninitializeFragmentShader | ( | ) | [protected, virtual] |
Called to clean up a fragment shader.
Uninitializes the ARB fragment shader handle associated w/this object
Reimplemented from cGenericShader.
int cGLSLShader::initializeVertexShader | ( | ) | [protected, virtual] |
Called to create a vertex shader from m_vertexShaderString.
Initializes the ARB vertex shader handle associated w/this shader
Reimplemented from cGenericShader.
int cGLSLShader::uninitializeVertexShader | ( | ) | [protected, virtual] |
Called to clean up a vertex shader.
Uninitializes the ARB vertex shader handle associated w/this object
Reimplemented from cGenericShader.
int cGLSLShader::initializeProgram | ( | ) | [protected] |
Creates the shader program object.
Initializes the ARB program object associated w/this shader
void cGLSLShader::uninitializeProgram | ( | ) | [protected] |
Cleans up the shader program object (detaches the shaders and deletes the object).
Uninitializes the ARB program object associated w/this shader
void cGLSLShader::enableShaders | ( | ) | [protected, virtual] |
Called at the beginning of a rendering pass to enable shaders, must be over-ridden by subclasses
Implements cGenericShader.
void cGLSLShader::disableShaders | ( | ) | [protected, virtual] |
Called at the end of a rendering pass to disable shaders, must be over-ridden by subclasses
Implements cGenericShader.