SuperTuxKart
Public Member Functions | Private Attributes | List of all members
PostProcessing Class Reference

Handles post processing, eg motion blur. More...

#include <post_processing.hpp>

Public Member Functions

void reset ()
 Initialises post processing at the (re-)start of a race. More...
 
void update (float dt)
 Updates the boost times for all cameras, called once per frame. More...
 
void renderBloom (GLuint in)
 
void renderSSAO (const FrameBuffer &linear_depth_framebuffer, const FrameBuffer &ssao_framebuffer, GLuint depth_stencil_texture)
 
void renderGaussian3Blur (const FrameBuffer &in_fbo, const FrameBuffer &auxiliary) const
 Blur the in texture.
 
void renderGaussian6Blur (const FrameBuffer &in_fbo, const FrameBuffer &auxiliary, float sigmaV, float sigmaH) const
 
void renderHorizontalBlur (const FrameBuffer &in_fbo, const FrameBuffer &auxiliary) const
 
void renderGaussian17TapBlur (const FrameBuffer &in_fbo, const FrameBuffer &auxiliary, const FrameBuffer &linear_depth) const
 
void renderPassThrough (unsigned tex, unsigned width, unsigned height) const
 Render tex. More...
 
void renderTextureLayer (unsigned tex, unsigned layer) const
 
void renderDoF (const FrameBuffer &framebuffer, GLuint color_texture, GLuint depth_stencil_texture)
 
void renderGodRays (scene::ICameraSceneNode *const camnode, const FrameBuffer &in_fbo, const FrameBuffer &tmp_fbo, const FrameBuffer &quarter1_fbo, const FrameBuffer &quarter2_fbo)
 
void applyMLAA (const FrameBuffer &mlaa_tmp_framebuffer, const FrameBuffer &mlaa_blend_framebuffer, const FrameBuffer &mlaa_colors_framebuffer)
 
void renderMotionBlur (const FrameBuffer &in_fbo, FrameBuffer &out_fbo, GLuint depth_stencil_texture)
 
void renderGlow (const FrameBuffer &quarter_framebuffer) const
 
void renderLightning (core::vector3df intensity)
 
void giveBoost (unsigned int cam_index)
 Use motion blur for a short time. More...
 
FrameBufferrender (scene::ICameraSceneNode *const camnode, bool isRace, RTT *rtts)
 Render the post-processed scene.
 

Private Attributes

std::vector< float > m_boost_time
 Boost time, how long the boost should be displayed. More...
 
STKTexturem_areamap
 

Detailed Description

Handles post processing, eg motion blur.

Member Function Documentation

◆ giveBoost()

void PostProcessing::giveBoost ( unsigned int  cam_index)

Use motion blur for a short time.

Set the boost amount according to the speed of the camera.

◆ renderPassThrough()

void PostProcessing::renderPassThrough ( unsigned  tex,
unsigned  width,
unsigned  height 
) const

Render tex.

Used for blit/texture resize

◆ reset()

void PostProcessing::reset ( )

Initialises post processing at the (re-)start of a race.

This sets up the vertices, normals and texture coordinates for each

◆ update()

void PostProcessing::update ( float  dt)

Updates the boost times for all cameras, called once per frame.

Parameters
dtTime step size.

Member Data Documentation

◆ m_boost_time

std::vector<float> PostProcessing::m_boost_time
private

Boost time, how long the boost should be displayed.

This also affects the strength of the effect: longer boost time will have a stronger effect.


The documentation for this class was generated from the following files: