namespace GL {
class Mesh;
+class Renderer;
class Shader;
class Texture2D;
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.