18#ifndef HEADER_POST_PROCESSING_HPP
19#define HEADER_POST_PROCESSING_HPP
21#include "graphics/gl_headers.hpp"
32 namespace video {
class IVideoDriver;
class ITexture; }
33 namespace scene {
class ICameraSceneNode; }
49 video::ITexture* m_areamap;
57 void renderBloom(GLuint in);
58 void renderSSAO(
const FrameBuffer& linear_depth_framebuffer,
60 GLuint depth_stencil_texture);
65 float sigmaV,
float sigmaH)
const;
68 void renderGaussian17TapBlur(
const FrameBuffer &in_fbo,
74 void renderTextureLayer(
unsigned tex,
unsigned layer)
const;
76 void renderDoF(
const FrameBuffer &framebuffer, GLuint color_texture, GLuint depth_stencil_texture);
77 void renderGodRays(scene::ICameraSceneNode *
const camnode,
83 void applyMLAA(
const FrameBuffer& mlaa_tmp_framebuffer,
89 GLuint depth_stencil_texture);
90 void renderGlow(
const FrameBuffer& quarter_framebuffer)
const;
91 void renderLightning(core::vector3df intensity);
Definition: frame_buffer.hpp:33
Handles post processing, eg motion blur.
Definition: post_processing.hpp:42
void update(float dt)
Updates the boost times for all cameras, called once per frame.
Definition: post_processing.cpp:796
void reset()
Initialises post processing at the (re-)start of a race.
Definition: post_processing.cpp:773
void giveBoost(unsigned int cam_index)
Use motion blur for a short time.
Definition: post_processing.cpp:784
void renderGaussian3Blur(const FrameBuffer &in_fbo, const FrameBuffer &auxiliary) const
Blur the in texture.
Definition: post_processing.cpp:839
void renderPassThrough(unsigned tex, unsigned width, unsigned height) const
Render tex.
Definition: post_processing.cpp:998
FrameBuffer * render(scene::ICameraSceneNode *const camnode, bool isRace, RTT *rtts)
Render the post-processed scene.
Definition: post_processing.cpp:1185
std::vector< float > m_boost_time
Boost time, how long the boost should be displayed.
Definition: post_processing.hpp:47