X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fpostprocessor.h;h=15cdc271149265e171da1b2cdf4ef6ce6a3b842d;hb=4fe225bf15048fcb7a678370f87d09f2de37031a;hp=0666dd46c9cf2eb23e7bc4568cdea889fbf5c484;hpb=904de4f7fd994886adbd3a6c03bc1b7c14ebc562;p=libs%2Fgl.git diff --git a/source/postprocessor.h b/source/postprocessor.h index 0666dd46..15cdc271 100644 --- a/source/postprocessor.h +++ b/source/postprocessor.h @@ -5,6 +5,7 @@ namespace Msp { namespace GL { class Mesh; +class Renderer; class Shader; class Texture2D; @@ -21,13 +22,17 @@ public: virtual ~PostProcessor() { } /// Renders the effect. - virtual void render(const Texture2D &color, const Texture2D &depth) = 0; + virtual void render(const Texture2D &, const Texture2D &) { } + + virtual void render(Renderer &, const Texture2D &, const Texture2D &); protected: /** Returns a vertex shader suitable for rendering a full-screen quad. Input vertices are assumed to be in normalized device coordinates; no transform is performed. The shader provides a varying vec2 texcoord for - a fragment shader to access textures. */ + a fragment shader to access textures. + + Deprecated in favor of the builtin postprocess.glsl module. */ static Shader &get_fullscreen_vertex_shader(); /** Returns a mesh consisting of a single quad, covering the entire screen.