Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
DebugPass.hpp
1
#pragma once
2
3
#include <Common/Rendering/RenderGraph.hpp>
4
#include <EngineCore/Assets/AssetReference.hpp>
5
#include <EngineCore/Assets/PipelineSet/GraphicsPipelineAsset.hpp>
6
7
#include "GbufferPass.hpp"
8
9
namespace
Grindstone::GraphicsAPI
{
10
class
Buffer
;
11
}
12
13
namespace
Grindstone::Renderer
{
14
enum class
DeferredRenderMode : uint16_t {
15
Default,
16
Position,
17
PositionMod,
18
ViewPosition,
19
ViewPositionMod,
20
Depth,
21
DepthMod,
22
Normal,
23
ViewNormal,
24
Albedo,
25
Specular,
26
Roughness,
27
AmbientOcclusion,
28
Count
29
};
30
31
class
DebugPass
{
32
public
:
33
bool
Initialize();
34
Grindstone::Renderer::RenderGraphBuilderResourceRef
AddPass(
35
DeferredRenderMode renderMode,
36
const
glm::mat4& projectionMatrix,
37
GraphicsAPI::Buffer
* vertexBuffer,
38
GraphicsAPI::Buffer
* indexBuffer,
39
Grindstone::Renderer::RenderGraphBuilder
& renderGraphBuilder,
40
const
GbufferData
& gbufferData,
41
RenderGraphBuilderResourceRef
ambientOcclusionRef,
42
RenderGraphBuilderResourceRef
outputRef
43
);
44
45
private
:
46
Grindstone::AssetReference<Grindstone::GraphicsPipelineAsset>
debugPipelineSet;
47
std::array<Grindstone::GraphicsAPI::DescriptorSet*, 3> debugDataDescriptorSet{};
48
std::array<Grindstone::GraphicsAPI::Buffer*, 3> debugDataUniformBuffer{};
49
GraphicsAPI::DescriptorSetLayout
* descriptorSetLayout =
nullptr
;
50
Grindstone::GraphicsAPI::Sampler
* screenSampler =
nullptr
;
51
};
52
}
Grindstone::GraphicsAPI::Buffer
Definition
Buffer.hpp:49
Grindstone::GraphicsAPI::DescriptorSetLayout
Definition
DescriptorSetLayout.hpp:14
Grindstone::GraphicsAPI::Sampler
Definition
Sampler.hpp:49
Grindstone::Renderer::DebugPass
Definition
DebugPass.hpp:31
Grindstone::Renderer::RenderGraphBuilder
Definition
RenderGraphBuilder.hpp:12
Grindstone::GraphicsAPI
Definition
Buffer.hpp:9
Grindstone::Renderer
Definition
AttachmentInfo.hpp:15
Grindstone::AssetReference
Definition
AssetReference.hpp:45
Grindstone::Renderer::GbufferData
Definition
GbufferPass.hpp:9
Grindstone::Renderer::RenderGraphBuilderResourceRef
Definition
RenderGraphResourceRef.hpp:51
plugins
Grindstone.Renderer.Deferred
include
Passes
DebugPass.hpp
Generated by
1.17.0