Oxygen Engine
Modern C++ 3D Engine using OpenGL
Loading...
Searching...
No Matches
final.h
1#ifndef OE_RENDER_PIPELINE_FINAL
2#define OE_RENDER_PIPELINE_FINAL
3
4#include "../pipeline.h"
5
7{
13 class FinalPass : public Pass
14 {
15 public:
16 void init() override;
17
18 void setHdrTexture(std::shared_ptr<oe::render::Texture>);
19 void setBloomTexture(std::shared_ptr<oe::render::Texture>);
20
21 oe::render::PipelineOutput handle(const oe::render::PipelineInput&& input) override;
22
23 private:
24 std::shared_ptr<oe::render::Texture> _hdr_render;
25 std::shared_ptr<oe::render::Texture> _bloom_render;
26 std::shared_ptr<oe::render::Texture> _tonemapped_render;
27
28 std::shared_ptr<oe::render::Shader> _tonemap_shader;
29 std::shared_ptr<oe::render::Shader> _final_shader;
30
31 std::shared_ptr<oe::render::Framebuffer> _framebuffer;
32
33 glm::vec2 _dimensions = {};
34 glm::vec2 _invert_dimensions = {};
35 };
36}
37
38#endif
Definition framebuffer.h:53
Definition pipeline.h:140
Definition final.h:14
Predefined Pass and helpers for the Pipeline.
Definition blur_manager.h:8
Definition pipeline.h:15