Choose your operating system:
Windows
macOS
Linux
| FRDGAllocatorScope
|
Module |
|
Header |
/Engine/Source/Runtime/RenderCore/Public/RenderGraphBuilder.h |
Include |
#include "RenderGraphBuilder.h" |
class FRDGBuilder : private FRDGAllocatorScope
Use the render graph builder to build up a graph of passes and then call Execute() to process them. Resource barriers and lifetimes are derived from RDG parameters in the pass parameter struct provided to each AddPass call. The resulting graph is compiled, culled, and executed in Execute(). The builder should be created on the stack and executed prior to destruction.
Name | Description | ||
---|---|---|---|
|
Blackboard |
The blackboard used to hold common data tied to the graph lifetime. |
|
|
RHICmdList |
The RHI command list used for the render graph. |
Name | Description | |
---|---|---|
|
FRDGBuilder ( |
|
|
FRDGBuilder ( |
Name | Description | |
---|---|---|
|
~FRDGBuilder() |
Name | Description | ||
---|---|---|---|
|
AddDispatchHint() |
A hint to the builder to flush work to the RHI thread after the last queued pass on the execution timeline. |
|
|
AddPass ( |
Adds a lambda pass to the graph with a runtime-generated parameter struct. |
|
|
AddPass ( |
Adds a lambda pass to the graph without any parameters. |
|
|
AddPass ( |
Adds a lambda pass to the graph with an accompanied pass parameter struct. |
|
|
void * |
Alloc |
Allocates raw memory using an allocator tied to the lifetime of the graph. |
|
ObjectType &... |
AllocObject ( |
Allocates a C++ object using an allocator tied to the lifetime of the graph. |
|
ParameterStr... |
AllocParameters() |
Allocates a parameter struct with a lifetime tied to graph execution. |
|
PODType *... |
AllocPOD() |
Allocates POD memory using an allocator tied to the lifetime of the graph. |
|
PODType *... |
AllocPODArray ( |
Allocates POD memory using an allocator tied to the lifetime of the graph. |
|
BeginEventScope ( |
Manually begins a new GPU event scope. |
|
|
BeginResourceDump |
||
|
const TRefCo... |
ConvertToExternalBuffer ( |
|
|
const TRefCo... |
ConvertToExternalTexture ( |
For graph-created resources, this forces immediate allocation of the underlying pooled resource, effectively promoting it to an external resource. |
|
FRDGBufferRe... |
CreateBuffer ( |
A variant of CreateBuffer where users supply NumElements through a callback. |
|
FRDGBufferRe... |
CreateBuffer ( |
Create graph tracked buffer from a descriptor. |
|
FRDGBufferSR... |
CreateSRV ( |
|
|
FRDGBufferSR... |
CreateSRV ( |
Create graph tracked SRV for a buffer from a descriptor. |
|
FRDGTextureS... |
CreateSRV ( |
Create graph tracked SRV for a texture from a descriptor. |
|
FRDGTextureR... |
CreateTexture ( |
Create graph tracked texture from a descriptor. |
|
FRDGTextureU... |
CreateUAV ( |
|
|
FRDGBufferUA... |
CreateUAV ( |
|
|
FRDGBufferUA... |
CreateUAV ( |
Create graph tracked UAV for a buffer from a descriptor. |
|
FRDGTextureU... |
CreateUAV ( |
Create graph tracked UAV for a texture from a descriptor. |
|
TRDGUniformB... |
CreateUniformBuffer ( |
Creates a graph tracked uniform buffer which can be attached to passes. |
|
Drain() |
Drains the RDG queue early. |
|
|
DumpDraw ( |
||
|
EndEventScope() |
Manually ends the current GPU event scope. |
|
|
EndResourceDump() |
||
|
Execute() |
Executes the queued passes, managing setting of render targets (RHI RenderPasses), resource transitions and queued texture extraction. |
|
|
FinalizeBufferAccess ( |
||
|
FinalizeBufferAccess ( |
||
|
FinalizeResourceAccess ( |
Finalizes the access of multiple resources so that they are immutable for the remainder of the graph. |
|
|
FinalizeTextureAccess ( |
||
|
FinalizeTextureAccess ( |
||
|
FRDGTextureR... |
FindExternalTexture ( |
Finds an RDG texture associated with the external texture, or returns null if none is found. |
|
FRDGTextureR... |
FindExternalTexture ( |
Finds an RDG texture associated with the external texture, or returns null if none is found. |
|
const TRefCo... |
GetPooledBuffer ( |
|
|
const TRefCo... |
GetPooledTexture ( |
Performs an immediate query for the underlying pooled resource. |
|
IsDrainEnabled() |
Whether RDG will actually perform a drain when Drain() is called. |
|
|
IsDumpingDraws() |
||
|
IsDumpingFrame() |
||
|
IsImmediateMode() |
Whether RDG is running in immediate mode. |
|
|
QueueBufferExtraction ( |
Queues a pooled buffer extraction to happen at the end of graph execution. |
|
|
QueueBufferExtraction ( |
Queues a pooled buffer extraction to happen at the end of graph execution. |
|
|
QueueBufferUpload ( |
||
|
QueueBufferUpload ( |
||
|
QueueBufferUpload ( |
Queues a buffer upload operation prior to execution. |
|
|
QueueBufferUpload ( |
Queues a buffer upload operation prior to execution. |
|
|
QueueBufferUpload ( |
Queues a buffer upload operation prior to execution. |
|
|
QueueBufferUpload ( |
A variant where InitialData and InitialDataSize are supplied through callbacks. |
|
|
QueueTextureExtraction ( |
Queues a pooled render target extraction to happen at the end of graph execution. |
|
|
QueueTextureExtraction ( |
Queues a pooled render target extraction to happen at the end of graph execution. |
|
|
FRDGBufferRe... |
RegisterExternalBuffer ( |
Register a external buffer to be tracked by the render graph. |
|
FRDGBufferRe... |
RegisterExternalBuffer ( |
Register an external buffer with a custom name. |
|
FRDGBufferRe... |
RegisterExternalBuffer ( |
Register a external buffer to be tracked by the render graph. |
|
FRDGTextureR... |
RegisterExternalTexture ( |
Register an external texture with a custom name. |
|
FRDGTextureR... |
RegisterExternalTexture ( |
Registers a external pooled render target texture to be tracked by the render graph. |
|
RemoveUnusedBufferWarning ( |
||
|
RemoveUnusedTextureWarning ( |
Flag a resource that is produced by a pass but never used or extracted to not emit an 'unused' warning. |
|
|
SetBufferAccessFinal ( |
(External | Extracted only) Sets the access to transition to after execution at the end of the graph. |
|
|
SetCommandListStat ( |
Sets the current command list stat for all subsequent passes. |
|
|
SetFlushResourcesRHI() |
Tells the builder to delete unused RHI resources. |
|
|
SetTextureAccessFinal ( |
(External | Extracted only) Sets the access to transition to after execution at the end of the graph. |
|
|
TickPoolElements() |
Per-frame update of the render graph resource pool. |
Name |
Description |
|
---|---|---|
|
EExecuteMode |
Name |
Description |
---|---|
kDefaultAccessFinal |
|
kDefaultUnaccountedCSVStat |
Name | Description | ||
---|---|---|---|
|
PreallocateBuffer ( |
PreallocateBuffer has been renamed to ConvertToExternalBuffer |
|
|
PreallocateTexture ( |
PreallocateTexture has been renamed to ConvertToExternalTexture |