Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
RenderGraphContextSet.hpp
1#pragma once
2
3#include <Common/HashedString.hpp>
4#include <EngineCore/WorldContext/WorldContext.hpp>
5#include <Common/Rendering/RenderGraph.hpp>
6#include <Common/Rendering/RenderGraphBuilder.hpp>
7
8
9namespace Grindstone::Rendering {
10 const Grindstone::ConstHashedString renderGraphWorldContextName("Grindstone::Rendering::RenderGraphWorldContext");
11 class RenderGraphWorldContext : public Grindstone::WorldContext {
12 public:
13 RenderGraphWorldContext();
14 RenderGraphWorldContext(const RenderGraphWorldContext&) = delete;
15 RenderGraphWorldContext(RenderGraphWorldContext&&) noexcept = default;
16 virtual ~RenderGraphWorldContext() override = default;
17
18 [[nodiscard]] static RenderGraphWorldContext* GetActiveContext();
19 static void SetActiveContext(RenderGraphWorldContext& cxt);
20 virtual void SetAsActive() override;
21
22 virtual void StartFrame();
23 virtual Grindstone::Renderer::RenderGraph& GetRenderGraph();
24
25 protected:
26
28
29 };
30}
Definition RenderGraph.hpp:29
Definition WorldContext.hpp:7