Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
Debug.hpp
1
#pragma once
2
3
#include <Common/Rendering/RendererFeature.hpp>
4
#include <Common/Rendering/RenderGraph.hpp>
5
#include <EngineCore/Assets/AssetReference.hpp>
6
#include <EngineCore/Assets/PipelineSet/GraphicsPipelineAsset.hpp>
7
8
namespace
Grindstone::GraphicsAPI
{
9
class
Buffer
;
10
}
11
12
namespace
Grindstone::Renderer
{
13
enum class
DeferredRenderMode : uint16_t {
14
Default,
15
Position,
16
PositionMod,
17
ViewPosition,
18
ViewPositionMod,
19
Depth,
20
DepthMod,
21
Normal,
22
ViewNormal,
23
Albedo,
24
Specular,
25
Roughness,
26
AmbientOcclusion,
27
Count
28
};
29
30
class
Debug :
public
Rendering::RendererFeature
{
31
public
:
32
Debug() :
Rendering::RendererFeature
(
"Debug"
, Rendering::DeferredRenderGraphOrderEvent::EndRendering) {}
33
static
const
char
* GetStaticFeatureName() {
return
"Debug"
; }
34
virtual
void
Initialize()
override
;
35
virtual
void
Bind(
36
Grindstone::Renderer::RenderGraphBuilder
& renderGraphBuilder,
37
Grindstone::Renderer::RenderFrameContext
& context
38
)
override
;
39
40
private
:
41
Grindstone::AssetReference<Grindstone::GraphicsPipelineAsset>
debugPipelineSet;
42
std::array<Grindstone::GraphicsAPI::DescriptorSet*, 3> debugDataDescriptorSet{};
43
std::array<Grindstone::GraphicsAPI::Buffer*, 3> debugDataUniformBuffer{};
44
GraphicsAPI::DescriptorSetLayout
* descriptorSetLayout =
nullptr
;
45
Grindstone::GraphicsAPI::Sampler
* screenSampler =
nullptr
;
46
};
47
}
Grindstone::GraphicsAPI::Buffer
Definition
Buffer.hpp:49
Grindstone::GraphicsAPI::DescriptorSetLayout
Definition
DescriptorSetLayout.hpp:14
Grindstone::GraphicsAPI::Sampler
Definition
Sampler.hpp:49
Grindstone::Renderer::RenderGraphBuilder
Definition
RenderGraphBuilder.hpp:12
Grindstone::Rendering::RendererFeature
Definition
RendererFeature.hpp:10
Grindstone::GraphicsAPI
Definition
Buffer.hpp:9
Grindstone::Renderer
Definition
AttachmentInfo.hpp:17
Grindstone::AssetReference
Definition
AssetReference.hpp:45
Grindstone::Renderer::RenderFrameContext
Definition
RenderFrameContext.hpp:24
plugins
Grindstone.Renderer.Deferred
include
Features
Debug.hpp
Generated by
1.17.0