X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Feffects%2Fpostprocessor.h;fp=source%2Feffects%2Fpostprocessor.h;h=c107d885f658e028522fdb0fe463bbd755d60d1d;hb=7aaec9a70b8d7733429bec043f8e33e02956f266;hp=0000000000000000000000000000000000000000;hpb=bec07999d95b76f4b47cffcc564d0cd0afc0435e;p=libs%2Fgl.git diff --git a/source/effects/postprocessor.h b/source/effects/postprocessor.h new file mode 100644 index 00000000..c107d885 --- /dev/null +++ b/source/effects/postprocessor.h @@ -0,0 +1,66 @@ +#ifndef MSP_GL_POSTPROCESSOR_H_ +#define MSP_GL_POSTPROCESSOR_H_ + +#include + +namespace Msp { +namespace GL { + +class Mesh; +class Renderer; +class Sampler; +class Shader; +class Texture2D; + +/** +Base class for post-processing effects. Post-processors receive the contents +of the entire framebuffer as a texture and render it back, altering it in the +process. +*/ +class PostProcessor +{ +public: + struct Template + { + class Loader: public Msp::DataFile::ObjectLoader