Apply post process effects to a HDR rendering of a scene.
More...
#include <PostProcessStack.hpp>
|
Texture | _bloomBuffer |
| Bloom texture.
|
|
Texture | _toneMapBuffer |
| Tonemapping texture.
|
|
Texture | _dofDownscaledColor |
| DoF downscaled scene color texture.
|
|
Texture | _dofCocAndDepth |
| DoF CoC texture.
|
|
Texture | _dofGatherBuffer |
| DoF gathering texture.
|
|
Texture | _resultTexture |
| In-progress result of the stack.
|
|
std::unique_ptr< GaussianBlur > | _blur |
| Bloom blur processing.
|
|
Program * | _bloomProgram |
| Bloom program.
|
|
Program * | _bloomComposite |
| Bloom compositing program.
|
|
Program * | _toneMappingProgram |
| Tonemapping program.
|
|
Program * | _dofCocProgram |
| CoC computation.
|
|
Program * | _dofGatherProgram |
| DoF gathering step.
|
|
Program * | _dofCompositeProgram |
| Composite DoF and input.
|
|
Program * | _fxaaProgram |
| FXAA program.
|
|
Settings | _settings |
| The processing settings.
|
|
|
std::string | _name |
| Debug name.
|
|
Layout | _colorFormat = Layout::NONE |
| The preferred output format for a given renderer.
|
|
Layout | _depthFormat = Layout::NONE |
| The preferred output format for a given renderer.
|
|
Apply post process effects to a HDR rendering of a scene.
The effects currently provided are:
Inherits Renderer.
◆ PostProcessStack()
PostProcessStack::PostProcessStack |
( |
const glm::vec2 & |
resolution | ) |
|
|
explicit |
Constructor.
- Parameters
-
resolution | the initial rendering resolution |
◆ interface()
void PostProcessStack::interface |
( |
| ) |
|
|
overridevirtual |
Display GUI exposing renderer options.
- Note
- The renderer can assume that a GUI window is currently open.
Reimplemented from Renderer.
◆ process()
void PostProcessStack::process |
( |
const Texture & |
src, |
|
|
const glm::mat4 & |
proj, |
|
|
const Texture & |
depth, |
|
|
Texture & |
dst, |
|
|
uint |
layer = 0 |
|
) |
| |
Apply post processing to the scene. You can assume that there will be at least one operation applied so the same texture can be used as input and output.
- Parameters
-
src | the texture to process |
proj | the projection matrix (for DoF) |
depth | the scene depth buffer (for DoF) |
dst | the destination texture |
layer | the layer of the destination to write to |
◆ resize()
void PostProcessStack::resize |
( |
uint |
width, |
|
|
uint |
height |
|
) |
| |
|
overridevirtual |
Handle a window resize event.
- Parameters
-
width | the new width |
height | the new height |
Reimplemented from Renderer.
◆ settings()
Settings & PostProcessStack::settings |
( |
| ) |
|
|
inline |
Get the stack settings.
- Returns
- a reference to the settings.
◆ updateBlurPass()
void PostProcessStack::updateBlurPass |
( |
| ) |
|
|
private |
Update the bloom pass depth based on the current set radius.
The documentation for this class was generated from the following files: