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
SMAA.hpp
Go to the documentation of this file.
1
7
8
#ifndef GALAXY_GRAPHICS_POST_SMAA_HPP_
9
#define GALAXY_GRAPHICS_POST_SMAA_HPP_
10
11
#include "
galaxy/graphics/gl/Shader.hpp
"
12
#include "
galaxy/graphics/PostEffect.hpp
"
13
14
namespace
galaxy
15
{
16
namespace
graphics
17
{
23
class
SMAA
final :
public
PostEffect
24
{
25
public
:
32
SMAA
(
const
int
width,
const
int
height);
33
37
virtual
~SMAA
();
38
45
void
resize
(
const
int
width,
const
int
height)
override
;
46
54
[[nodiscard]]
55
unsigned
int
render
(
const
unsigned
int
input)
override
;
56
62
[[nodiscard]]
63
bool
is_enabled
()
override
;
64
65
private
:
69
SMAA
() =
delete
;
70
71
private
:
75
Shader
m_smaa_edge
;
76
80
Shader
m_smaa_blend
;
81
85
Shader
m_smaa_neighbourhood
;
86
90
unsigned
int
m_neighbour_tex
;
91
95
unsigned
int
m_edge_tex
;
96
100
unsigned
int
m_blend_tex
;
101
105
unsigned
int
m_area_tex
;
106
110
unsigned
int
m_search_tex
;
111
115
unsigned
int
m_neighbour_fbo
;
116
120
unsigned
int
m_edge_fbo
;
121
125
unsigned
int
m_blend_fbo
;
126
};
127
}
// namespace graphics
128
}
// namespace galaxy
129
130
#endif
PostEffect.hpp
Shader.hpp
galaxy::graphics::PostEffect
Manages post processing effects to apply to combined scene.
Definition
PostEffect.hpp:21
galaxy::graphics::SMAA
Submorphological Anti Aliasing.
Definition
SMAA.hpp:24
galaxy::graphics::SMAA::render
unsigned int render(const unsigned int input) override
Render effect to input texture.
Definition
SMAA.cpp:16098
galaxy::graphics::SMAA::m_neighbour_fbo
unsigned int m_neighbour_fbo
SMAA neighbour framebuffer.
Definition
SMAA.hpp:115
galaxy::graphics::SMAA::m_smaa_neighbourhood
Shader m_smaa_neighbourhood
SMAA neighbourhood shader.
Definition
SMAA.hpp:85
galaxy::graphics::SMAA::m_edge_tex
unsigned int m_edge_tex
SMAA edge texture.
Definition
SMAA.hpp:95
galaxy::graphics::SMAA::m_edge_fbo
unsigned int m_edge_fbo
SMAA edge framebuffer.
Definition
SMAA.hpp:120
galaxy::graphics::SMAA::m_smaa_blend
Shader m_smaa_blend
SMAA Blending shader.
Definition
SMAA.hpp:80
galaxy::graphics::SMAA::m_blend_fbo
unsigned int m_blend_fbo
SMAA blend framebuffer.
Definition
SMAA.hpp:125
galaxy::graphics::SMAA::is_enabled
bool is_enabled() override
Is this effect enabled?
Definition
SMAA.cpp:16148
galaxy::graphics::SMAA::m_smaa_edge
Shader m_smaa_edge
SMAA Edge shader.
Definition
SMAA.hpp:75
galaxy::graphics::SMAA::m_area_tex
unsigned int m_area_tex
SMAA area texture.
Definition
SMAA.hpp:105
galaxy::graphics::SMAA::~SMAA
virtual ~SMAA()
Destructor.
Definition
SMAA.cpp:16071
galaxy::graphics::SMAA::resize
void resize(const int width, const int height) override
Resize framebuffers.
Definition
SMAA.cpp:16084
galaxy::graphics::SMAA::SMAA
SMAA()=delete
Constructor.
galaxy::graphics::SMAA::m_blend_tex
unsigned int m_blend_tex
SMAA blend texture.
Definition
SMAA.hpp:100
galaxy::graphics::SMAA::m_search_tex
unsigned int m_search_tex
SMAA search texture.
Definition
SMAA.hpp:110
galaxy::graphics::SMAA::m_neighbour_tex
unsigned int m_neighbour_tex
SMAA neighbour texture.
Definition
SMAA.hpp:90
galaxy::graphics::Shader
OpenGL Shader Program.
Definition
Shader.hpp:29
galaxy
Animated.cpp galaxy.
Definition
Animated.cpp:16
galaxy
src
galaxy
graphics
post
SMAA.hpp
Generated on Fri Sep 12 2025 07:29:48 for galaxy by
1.12.0