galaxy 1.0.0
Real-Time C++23 Game Programming Framework. Built on data-driven design principles and agile software engineering.
Loading...
Searching...
No Matches
galaxy::graphics::PostEffect Class Referenceabstract

Manages post processing effects to apply to combined scene. More...

#include <PostEffect.hpp>

+ Inheritance diagram for galaxy::graphics::PostEffect:
+ Collaboration diagram for galaxy::graphics::PostEffect:

Public Member Functions

virtual ~PostEffect ()=default
 Destructor.
 
virtual void resize (const int width, const int height)=0
 Resize framebuffers.
 
virtual unsigned int render (const unsigned int input)=0
 Render effect to input texture.
 
virtual bool is_enabled ()=0
 Is this effect enabled?
 

Protected Member Functions

 PostEffect ()=default
 Constructor.
 
 PostEffect (const PostEffect &)=default
 Copy constructor.
 
 PostEffect (PostEffect &&)=default
 Move constructor.
 
PostEffectoperator= (const PostEffect &)=default
 Copy assignment operator.
 
PostEffectoperator= (PostEffect &&)=default
 Move assignment operator.
 

Detailed Description

Manages post processing effects to apply to combined scene.

Definition at line 20 of file PostEffect.hpp.

Constructor & Destructor Documentation

◆ ~PostEffect()

virtual galaxy::graphics::PostEffect::~PostEffect ( )
virtualdefault

Destructor.

◆ PostEffect() [1/3]

galaxy::graphics::PostEffect::PostEffect ( )
protecteddefault

Constructor.

◆ PostEffect() [2/3]

galaxy::graphics::PostEffect::PostEffect ( const PostEffect & )
protecteddefault

Copy constructor.

◆ PostEffect() [3/3]

galaxy::graphics::PostEffect::PostEffect ( PostEffect && )
protecteddefault

Move constructor.

Member Function Documentation

◆ resize()

virtual void galaxy::graphics::PostEffect::resize ( const int width,
const int height )
pure virtual

Resize framebuffers.

Parameters
widthNew width of internal framebuffer.
heightNew height of internal framebuffer.

Implemented in galaxy::graphics::ChromaticAberration, galaxy::graphics::FilmicGrain, galaxy::graphics::GammaCorrection, galaxy::graphics::GaussianBlur, galaxy::graphics::Sharpen, and galaxy::graphics::SMAA.

◆ render()

virtual unsigned int galaxy::graphics::PostEffect::render ( const unsigned int input)
nodiscardpure virtual

Render effect to input texture.

Parameters
inputInput texture from previous effect or window framebuffer.
Returns
Returns output texture for next effect or final framebuffer.

Implemented in galaxy::graphics::ChromaticAberration, galaxy::graphics::FilmicGrain, galaxy::graphics::GammaCorrection, galaxy::graphics::GaussianBlur, galaxy::graphics::Sharpen, and galaxy::graphics::SMAA.

◆ is_enabled()

virtual bool galaxy::graphics::PostEffect::is_enabled ( )
nodiscardpure virtual

◆ operator=() [1/2]

PostEffect & galaxy::graphics::PostEffect::operator= ( const PostEffect & )
protecteddefault

Copy assignment operator.

◆ operator=() [2/2]

PostEffect & galaxy::graphics::PostEffect::operator= ( PostEffect && )
protecteddefault

Move assignment operator.


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