Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
RenderGraphBuilder.hpp
1
#pragma once
2
3
#include <vector>
4
#include <string>
5
#include <map>
6
#include <stdint.h>
7
8
#include "RenderGraph.hpp"
9
10
namespace
Grindstone::Renderer {
11
class
RenderGraphBuilder
{
12
public
:
13
// Using all current conditions, evaluate all the framegraph passes and output them to a compiled frame graph with all resources prepared for the render.
14
[[nodiscard]]
RenderGraph
Compile();
15
RenderGraphPass
& AddPass(
RenderGraphPass
pass);
16
RenderGraphPass
& AddPass(
HashedString
name, GpuQueue queue);
17
18
void
SetOutputAttachment(
HashedString
attachmentName);
19
20
private
:
21
HashedString
outputAttachment;
22
std::map<HashedString, RenderGraphPass> passes;
23
std::map<HashedString, Grindstone::GraphicsAPI::Buffer*> buffers;
24
std::map<HashedString, Grindstone::GraphicsAPI::Image*> images;
25
};
26
}
Grindstone::HashedString
Definition
HashedString.hpp:9
Grindstone::Renderer::RenderGraphBuilder
Definition
RenderGraphBuilder.hpp:11
Grindstone::Renderer::RenderGraphPass
Definition
RenderGraphPass.hpp:12
Grindstone::Renderer::RenderGraph
Definition
RenderGraph.hpp:18
sources
code
Common
Rendering
RenderGraphBuilder.hpp
Generated by
1.13.2