BRE12
BRE
PostProcessPass
PostProcessCmdListRecorder.h
1
#pragma once
2
3
#include <CommandManager\CommandListPerFrame.h>
4
5
struct
D3D12_CPU_DESCRIPTOR_HANDLE;
6
struct
D3D12_GPU_DESCRIPTOR_HANDLE;
7
struct
ID3D12Resource;
8
9
namespace
BRE
{
10
// To record command list for post processing effects (anti aliasing, color grading, etc).
11
class
PostProcessCmdListRecorder
{
12
public
:
13
PostProcessCmdListRecorder
() =
default
;
14
~
PostProcessCmdListRecorder
() =
default
;
15
PostProcessCmdListRecorder
(
const
PostProcessCmdListRecorder
&) =
delete
;
16
const
PostProcessCmdListRecorder
& operator=(
const
PostProcessCmdListRecorder
&) =
delete
;
17
PostProcessCmdListRecorder
(
PostProcessCmdListRecorder
&&) =
default
;
18
PostProcessCmdListRecorder
& operator=(
PostProcessCmdListRecorder
&&) =
default
;
19
20
static
void
InitSharedPSOAndRootSignature() noexcept;
21
22
// Preconditions:
23
// - InitSharedPSOAndRootSignature() must be called first and once
24
void
Init(ID3D12Resource& inputColorBuffer) noexcept;
25
26
// Preconditions:
27
// - Init() must be called first
28
void
RecordAndPushCommandLists(
const
D3D12_CPU_DESCRIPTOR_HANDLE& renderTargetView) noexcept;
29
30
bool
IsDataValid()
const
noexcept;
31
32
private
:
33
void
InitShaderResourceViews(ID3D12Resource& inputColorBuffer) noexcept;
34
35
CommandListPerFrame
mCommandListPerFrame;
36
37
D3D12_GPU_DESCRIPTOR_HANDLE mStartPixelShaderResourceView{ 0UL };
38
};
39
}
40
BRE
Definition:
Camera.cpp:8
BRE::PostProcessCmdListRecorder
Definition:
PostProcessCmdListRecorder.h:11
BRE::CommandListPerFrame
Definition:
CommandListPerFrame.h:16
Generated by
1.8.12