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
13
14namespace 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:
76
81
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
Manages post processing effects to apply to combined scene.
Submorphological Anti Aliasing.
Definition SMAA.hpp:24
unsigned int render(const unsigned int input) override
Render effect to input texture.
Definition SMAA.cpp:16098
unsigned int m_neighbour_fbo
SMAA neighbour framebuffer.
Definition SMAA.hpp:115
Shader m_smaa_neighbourhood
SMAA neighbourhood shader.
Definition SMAA.hpp:85
unsigned int m_edge_tex
SMAA edge texture.
Definition SMAA.hpp:95
unsigned int m_edge_fbo
SMAA edge framebuffer.
Definition SMAA.hpp:120
Shader m_smaa_blend
SMAA Blending shader.
Definition SMAA.hpp:80
unsigned int m_blend_fbo
SMAA blend framebuffer.
Definition SMAA.hpp:125
bool is_enabled() override
Is this effect enabled?
Definition SMAA.cpp:16148
Shader m_smaa_edge
SMAA Edge shader.
Definition SMAA.hpp:75
unsigned int m_area_tex
SMAA area texture.
Definition SMAA.hpp:105
virtual ~SMAA()
Destructor.
Definition SMAA.cpp:16071
void resize(const int width, const int height) override
Resize framebuffers.
Definition SMAA.cpp:16084
SMAA()=delete
Constructor.
unsigned int m_blend_tex
SMAA blend texture.
Definition SMAA.hpp:100
unsigned int m_search_tex
SMAA search texture.
Definition SMAA.hpp:110
unsigned int m_neighbour_tex
SMAA neighbour texture.
Definition SMAA.hpp:90
OpenGL Shader Program.
Definition Shader.hpp:29
Animated.cpp galaxy.
Definition Animated.cpp:16