Voxellancer  0.3
A game about voxels in space
 All Classes Functions Pages
defaultrenderpipeline.h
1 #pragma once
2 
3 #include <memory>
4 #include <string>
5 #include <vector>
6 
7 #include "renderpipeline.h"
8 #include "property/property.h"
9 
10 
11 class FrameBuffer;
12 class RenderPass;
13 class ScreenQuad;
14 class PostProcessingPass;
15 
21 public:
23 
24  virtual void apply(FrameBuffer& frameBuffer, const RenderMetaData& metadata) override;
25  virtual void setup() override;
26  virtual int bufferCount() override;
27 
28  void addFXAA();
29  void addEmissivenessBlurVertical();
30  void addEmissivenessBlurHorizontal();
31  void addFinalization();
32 
33 protected:
34  std::shared_ptr<ScreenQuad> m_quad;
35 
36  std::shared_ptr<PostProcessingPass> m_fxaa;
37  std::shared_ptr<PostProcessingPass> m_finalization;
38  Property<std::string> m_antialiasing;
39 
40 };
41 
Definition: renderpipeline.h:18
Definition: rendermetadata.h:9
Definition: renderpass.h:15
Definition: framebuffer.h:17
Definition: defaultrenderpipeline.h:20
Definition: postprocessingpass.h:25
Definition: screenquad.h:15