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::Sharpen Class Referencefinal

Sharpening effect. More...

#include <Sharpen.hpp>

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

Public Member Functions

 Sharpen (const int width, const int height)
 Argument constructor.
 
virtual ~Sharpen ()=default
 Destructor.
 
void resize (const int width, const int height) override
 Resize framebuffers.
 
unsigned int render (const unsigned int input) override
 Render effect to input texture.
 
void set_amount (const float amount)
 Set sharpening amount.
 
float get_amount () const
 Get sharpening amount.
 
bool is_enabled () override
 Is this effect enabled?
 
- Public Member Functions inherited from galaxy::graphics::PostEffect
virtual ~PostEffect ()=default
 Destructor.
 

Private Member Functions

 Sharpen ()=delete
 Constructor.
 

Private Attributes

Shader m_shader
 Shader for post processing effect.
 
RenderTexture m_fb
 Framebuffer to render effect to.
 
float m_amount
 Sharpening amount.
 

Additional Inherited Members

- Protected Member Functions inherited from galaxy::graphics::PostEffect
 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

Sharpening effect.

Run after Anti-Aliasing.

Definition at line 24 of file Sharpen.hpp.

Constructor & Destructor Documentation

◆ Sharpen() [1/2]

galaxy::graphics::Sharpen::Sharpen ( const int width,
const int height )

Argument constructor.

Parameters
widthWidth of internal framebuffer.
heightHeight of internal framebuffer.

Definition at line 96 of file Sharpen.cpp.

+ Here is the call graph for this function:

◆ ~Sharpen()

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

Destructor.

◆ Sharpen() [2/2]

galaxy::graphics::Sharpen::Sharpen ( )
privatedelete

Constructor.

Member Function Documentation

◆ resize()

void galaxy::graphics::Sharpen::resize ( const int width,
const int height )
overridevirtual

Resize framebuffers.

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

Implements galaxy::graphics::PostEffect.

Definition at line 109 of file Sharpen.cpp.

+ Here is the call graph for this function:

◆ render()

unsigned int galaxy::graphics::Sharpen::render ( const unsigned int input)
nodiscardoverridevirtual

Render effect to input texture.

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

Implements galaxy::graphics::PostEffect.

Definition at line 114 of file Sharpen.cpp.

+ Here is the call graph for this function:

◆ set_amount()

void galaxy::graphics::Sharpen::set_amount ( const float amount)

Set sharpening amount.

Parameters
amount0.0 - 10.0.

Definition at line 126 of file Sharpen.cpp.

+ Here is the call graph for this function:

◆ get_amount()

float galaxy::graphics::Sharpen::get_amount ( ) const
nodiscard

Get sharpening amount.

Returns
Float.

Definition at line 132 of file Sharpen.cpp.

◆ is_enabled()

bool galaxy::graphics::Sharpen::is_enabled ( )
nodiscardoverridevirtual

Is this effect enabled?

Returns
True if effect is enabled. Otherwise false.

Implements galaxy::graphics::PostEffect.

Definition at line 137 of file Sharpen.cpp.

Member Data Documentation

◆ m_shader

Shader galaxy::graphics::Sharpen::m_shader
private

Shader for post processing effect.

Definition at line 91 of file Sharpen.hpp.

◆ m_fb

RenderTexture galaxy::graphics::Sharpen::m_fb
private

Framebuffer to render effect to.

Definition at line 96 of file Sharpen.hpp.

◆ m_amount

float galaxy::graphics::Sharpen::m_amount
private

Sharpening amount.

Definition at line 101 of file Sharpen.hpp.


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