This exception will be raised when an error occurs while compiling or linking a shader.
The filename passed to the ctor.
The process passed to the ctor. Will be one of "linking" or "compiling".
string infolog | Infolog returned from OpenGL. |
string process_ | Error occured while linking or compiling? |
string filename_ | Used to identify the shader. |
Compiles an already created OpenGL shader.
GLuint shader | The OpenGL shader. |
string filename | Used to identify the shader, if an error occurs. |
Links an already created OpenGL program.
GLuint program | The OpenGL program. |
string filename | Used to identify the shader, if an error occurs. |
Stores each line of the shader, line and text.
Represents an OpenGL program with it's shaders. The constructor must be used to avoid segmentation faults.
The OpenGL program.
Holds every shaders source.
Holds the directives.
The shaders filename.
Uniform locations will be cached here.
Attrib locations will be cached here.
Frag-data locations will be cached here.
Loads the shaders directly from a file.
Loads the shader from the source, filename_ is stored in filename and will be used to identify the shader.
Deletes all shaders and the program.
Binds the program.
Unbinds the program.
Queries an attrib location from OpenGL and caches it in attrib_locations. If the location was already queried the cache is returned. This throws a ShaderException if OpenGL returns a value < 0 indicating an Error.
Queries an fragment-data location from OpenGL and caches it in frag_locations. If the location was already queried the cache is returned. This throws a ShaderException if OpenGL returns a value < 0 indicating an Error.
Queries an uniform location from OpenGL and caches it in uniform_locations. If the location was already queried the cache is returned. This throws a ShaderException if OpenGL returns a value < 0 indicating an Error.
If glamour gets compiled with version=gl3n support for vectors, matrices and quaternions is added
Sets a shader uniform. Consider the corresponding OpenGL for more information.