Lums
|
A class describing a chain of shaders. More...
#include <ShaderPipeline.hpp>
Public Member Functions | |
ShaderPipeline () | |
void | setWindow (const Window &win) |
void | bind () |
void | append (const ShaderProgram &shader) |
void | prepend (const ShaderProgram &shader) |
void | clear () |
void | render () |
~ShaderPipeline () | |
A class describing a chain of shaders.
This class implements something known as ping-pong rendering.
lm::ShaderPipeline::ShaderPipeline | ( | ) |
Create a shader pipeline
lm::ShaderPipeline::~ShaderPipeline | ( | ) |
Shader pipeline dtor
void lm::ShaderPipeline::append | ( | const ShaderProgram & | shader | ) |
Append a shader to the pipeline
shader | The shader to append |
void lm::ShaderPipeline::bind | ( | ) |
Bind the pipeline. You should call this function before rendering
void lm::ShaderPipeline::clear | ( | ) |
Remove every shader from the pipeline
void lm::ShaderPipeline::prepend | ( | const ShaderProgram & | shader | ) |
Prepend a shader to the pipeline
shader | The shader to prepend |
void lm::ShaderPipeline::render | ( | ) |
Render the pipeline to screen
void lm::ShaderPipeline::setWindow | ( | const Window & | win | ) |
Set the shader pipeline active window
win | A reference to a window |