7 #ifndef NAZARA_DEFERREDRENDERTECHNIQUE_HPP 8 #define NAZARA_DEFERREDRENDERTECHNIQUE_HPP 10 #include <Nazara/Prerequesites.hpp> 11 #include <Nazara/Graphics/AbstractRenderTechnique.hpp> 12 #include <Nazara/Graphics/DeferredRenderQueue.hpp> 13 #include <Nazara/Graphics/ForwardRenderTechnique.hpp> 14 #include <Nazara/Math/Vector2.hpp> 15 #include <Nazara/Renderer/RenderTexture.hpp> 16 #include <Nazara/Renderer/Texture.hpp> 22 class DeferredRenderPass;
32 void Clear(
const SceneData& sceneData)
const override;
33 bool Draw(
const SceneData& sceneData)
const override;
35 void EnablePass(RenderPassType renderPass,
int position,
bool enable);
37 Texture* GetDepthStencilTexture()
const;
38 Texture* GetGBuffer(
unsigned int i)
const;
39 RenderTexture* GetGBufferRTT()
const;
43 RenderTechniqueType GetType()
const override;
44 RenderTexture* GetWorkRTT()
const;
45 Texture* GetWorkTexture(
unsigned int i)
const;
47 bool IsPassEnabled(RenderPassType renderPass,
int position);
53 static bool IsSupported();
56 bool Resize(
const Vector2ui& dimensions)
const;
58 static bool Initialize();
59 static void Uninitialize();
61 struct RenderPassComparator
63 bool operator()(RenderPassType pass1, RenderPassType pass2)
const;
66 std::map<RenderPassType, std::map<int, std::unique_ptr<DeferredRenderPass>>, RenderPassComparator> m_passes;
70 mutable RenderTexture m_GBufferRTT;
71 mutable RenderTexture m_workRTT;
75 const RenderTarget* m_viewerTarget;
79 #endif // NAZARA_FORWARDRENDERTECHNIQUE_HPP TODO: Inherit SoundEmitter from Node.
Definition: Algorithm.hpp:12
Graphics class that represents the module initializer of Graphics.
Definition: Graphics.hpp:15
Graphics class that represents the pass for rendering in deferred rendering.
Definition: DeferredRenderPass.hpp:22
Graphics class that represents the rendering queue for our scene.
Definition: AbstractRenderQueue.hpp:26
Graphics class that represents the rendering technique for our scene.
Definition: AbstractRenderTechnique.hpp:20
Graphics class that represents the technique used in deferred rendering.
Definition: DeferredRenderTechnique.hpp:24
Graphics class that represents the technique used in forward rendering.
Definition: ForwardRenderTechnique.hpp:21
Graphics class that represents the rendering queue for deferred rendering.
Definition: DeferredRenderQueue.hpp:22