Go to the source code of this file.
|
| using | ERDGTextureMetaDataAccess = ERHITextureMetaDataAccess |
| |
| using | FRDGPassHandle = TRDGHandle< FRDGPass, uint32 > |
| |
| using | FRDGPassRegistry = TRDGHandleRegistry< FRDGPassHandle > |
| |
| using | FRDGPassHandleArray = TArray< FRDGPassHandle, TInlineAllocator< 4, FRDGArrayAllocator > > |
| |
| using | FRDGPassBitArray = TRDGHandleBitArray< FRDGPassHandle > |
| |
| using | FRDGUniformBufferHandle = TRDGHandle< FRDGUniformBuffer, uint32 > |
| |
| using | FRDGUniformBufferRegistry = TRDGHandleRegistry< FRDGUniformBufferHandle > |
| |
| using | FRDGUniformBufferBitArray = TRDGHandleBitArray< FRDGUniformBufferHandle > |
| |
| using | FRDGViewHandle = TRDGHandle< FRDGView, uint32 > |
| |
| using | FRDGViewRegistry = TRDGHandleRegistry< FRDGViewHandle, ERDGHandleRegistryDestructPolicy::Never > |
| |
| using | FRDGViewUniqueFilter = TRDGHandleUniqueFilter< FRDGViewHandle > |
| |
| using | FRDGViewBitArray = TRDGHandleBitArray< FRDGViewHandle > |
| |
| using | FRDGTextureHandle = TRDGHandle< FRDGTexture, uint32 > |
| |
| using | FRDGTextureRegistry = TRDGHandleRegistry< FRDGTextureHandle, ERDGHandleRegistryDestructPolicy::Never > |
| |
| using | FRDGTextureBitArray = TRDGHandleBitArray< FRDGTextureHandle > |
| |
| using | FRDGBufferHandle = TRDGHandle< FRDGBuffer, uint32 > |
| |
| using | FRDGBufferReservedCommitHandle = TRDGHandle< FRDGBuffer, uint16 > |
| |
| using | FRDGBufferRegistry = TRDGHandleRegistry< FRDGBufferHandle, ERDGHandleRegistryDestructPolicy::Never > |
| |
| using | FRDGBufferBitArray = TRDGHandleBitArray< FRDGBufferHandle > |
| |
| using | FRDGPassHandlesByPipeline = TRHIPipelineArray< FRDGPassHandle > |
| |
| using | FRDGPassesByPipeline = TRHIPipelineArray< FRDGPass * > |
| |
| using | FRDGBufferNumElementsCallback = TFunction< uint32()> |
| |
| using | FRDGBufferInitialDataCallback = TFunction< const void *()> |
| |
| using | FRDGBufferInitialDataSizeCallback = TFunction< uint64()> |
| |
| template<typename ArrayType , typename ArrayTypeNoRef = std::remove_reference_t<ArrayType>, typename = typename TEnableIf<TIsTArray_V<ArrayTypeNoRef>>::Type> |
| using | TRDGBufferArrayCallback = TFunction< const ArrayType &()> |
| |
| using | FRDGBufferInitialDataFreeCallback = TFunction< void(const void *InData)> |
| |
| using | FRDGBufferInitialDataFillCallback = TFunction< void(void *InData, uint32 InDataSize)> |
| |
| using | FRDGDispatchGroupCountCallback = TFunction< FIntVector()> |
| |
|
| enum class | ERDGBuilderFlags {
None = 0
, ParallelSetup = 1 << 0
, ParallelCompile = 1 << 1
, ParallelExecute = 1 << 2
,
Parallel = ParallelSetup | ParallelCompile | ParallelExecute
, UE_DEPRECATED =(5.5, "Use ERDDGBuilderFlags::Parallel instead.") = Parallel
} |
| |
| enum class | ERDGPassFlags : uint16 {
None = 0
, Raster = 1 << 0
, Compute = 1 << 1
, AsyncCompute = 1 << 2
,
Copy = 1 << 3
, NeverCull = 1 << 4
, SkipRenderPass = 1 << 5
, NeverMerge = 1 << 6
,
NeverParallel = 1 << 7
, Readback = Copy | NeverCull
} |
| |
| enum class | ERDGBufferFlags : uint8 { None = 0
, MultiFrame = 1 << 0
, SkipTracking = 1 << 1
, ForceImmediateFirstBarrier = 1 << 2
} |
| |
| enum class | ERDGTextureFlags : uint8 {
None = 0
, MultiFrame = 1 << 0
, SkipTracking = 1 << 1
, ForceImmediateFirstBarrier = 1 << 2
,
MaintainCompression = 1 << 3
} |
| |
| enum class | ERDGSetupTaskWaitPoint : uint8 { Compile = 0
, Execute = 1
, MAX
} |
| |
| enum class | ERDGUnorderedAccessViewFlags : uint8 { None = 0
, SkipBarrier = 1 << 0
} |
| |
| enum class | ERDGViewableResourceType : uint8 { Texture
, Buffer
, MAX
} |
| |
| enum class | ERDGViewType : uint8 {
TextureUAV
, TextureSRV
, BufferUAV
, BufferSRV
,
MAX
} |
| |
| enum class | ERDGResourceExtractionFlags : uint8 { None = 0
, AllowTransient = 1
} |
| |
| enum class | ERDGInitialDataFlags : uint8 { None = 0
, NoCopy = 1 << 0
} |
| |
| enum class | ERDGPooledBufferAlignment : uint8 { None
, Page
, PowerOfTwo
} |
| |
| enum class | ERDGHandleRegistryDestructPolicy { Registry
, Allocator
, Never
} |
| |
◆ IF_RDG_ENABLE_DEBUG
| #define IF_RDG_ENABLE_DEBUG |
( |
|
Op | ) |
Op |
Performs the operation if RDG_ENABLE_DEBUG is enabled. Useful for one-line checks without explicitly wrapping in if.
◆ IF_RDG_ENABLE_TRACE
| #define IF_RDG_ENABLE_TRACE |
( |
|
Op | ) |
|
◆ RDG_DUMP_RESOURCES
Allows to dump all RDG resources of a frame.
◆ RDG_ENABLE_DEBUG
DEFINES Whether render graph debugging is enabled.
◆ RDG_ENABLE_DEBUG_WITH_ENGINE
Whether render graph debugging is enabled and we are compiling with the engine.
◆ RDG_ENABLE_TRACE
Whether render graph insight tracing is enabled.
◆ RDG_EVENTS
Whether render graph GPU events are enabled.
◆ RDG_EVENTS_NONE
The type of GPU events the render graph system supports. RDG_EVENTS == 0 means there is no string processing at all. RDG_EVENTS == 1 means the format component of the event name is stored as a const TCHAR*. RDG_EVENTS == 2 means string formatting is evaluated and stored in an FString.
◆ RDG_EVENTS_STRING_COPY
| #define RDG_EVENTS_STRING_COPY 2 |
◆ RDG_EVENTS_STRING_REF
| #define RDG_EVENTS_STRING_REF 1 |
◆ SUPPORTS_VISUALIZE_TEXTURE
◆ ERDGTextureMetaDataAccess
◆ FRDGBufferBitArray
◆ FRDGBufferHandle
◆ FRDGBufferInitialDataCallback
◆ FRDGBufferInitialDataFillCallback
◆ FRDGBufferInitialDataFreeCallback
◆ FRDGBufferInitialDataSizeCallback
◆ FRDGBufferNumElementsCallback
◆ FRDGBufferRegistry
◆ FRDGBufferReservedCommitHandle
◆ FRDGDispatchGroupCountCallback
◆ FRDGPassBitArray
◆ FRDGPassesByPipeline
◆ FRDGPassHandle
◆ FRDGPassHandleArray
◆ FRDGPassHandlesByPipeline
◆ FRDGPassRegistry
◆ FRDGTextureBitArray
◆ FRDGTextureHandle
◆ FRDGTextureRegistry
◆ FRDGUniformBufferBitArray
◆ FRDGUniformBufferHandle
◆ FRDGUniformBufferRegistry
◆ FRDGViewBitArray
◆ FRDGViewHandle
◆ FRDGViewRegistry
◆ FRDGViewUniqueFilter
◆ TRDGBufferArrayCallback
◆ ERDGBufferFlags
Flags to annotate a render graph buffer.
| Enumerator |
|---|
| None | |
| MultiFrame | Tag the buffer to survive through frame, that is important for multi GPU alternate frame rendering.
|
| SkipTracking | The buffer is ignored by RDG tracking and will never be transitioned. Use the flag when registering a buffer with no writable GPU flags. Write access is not allowed for the duration of the graph. This flag is intended as an optimization to cull out tracking of read-only buffers that are used frequently throughout the graph. Note that it's the user's responsibility to ensure the resource is in the correct readable state for use with RDG passes, as RDG does not know the exact state of the resource.
|
| ForceImmediateFirstBarrier | When set, RDG will perform its first barrier without splitting. Practically, this means the resource is left in its initial state until the first pass it's used within the graph. Without this flag, the resource is split-transitioned at the start of the graph.
|
◆ ERDGBuilderFlags
ENUMS
| Enumerator |
|---|
| None | |
| ParallelSetup | Allows the builder to parallelize AddSetupPass calls. Without this flag, setup passes run serially.
|
| ParallelCompile | Allows the builder to parallelize compilation of the graph. Without this flag, all passes execute on the render thread.
|
| ParallelExecute | Allows the builder to parallelize execution of passes. Without this flag, all passes execute on the render thread.
|
| Parallel | |
| UE_DEPRECATED | |
◆ ERDGHandleRegistryDestructPolicy
| Enumerator |
|---|
| Registry | |
| Allocator | |
| Never | |
◆ ERDGInitialDataFlags
| Enumerator |
|---|
| None | Specifies the default behavior, which is to make a copy of the initial data for replay when the graph is executed. The user does not need to preserve lifetime of the data pointer.
|
| NoCopy | Specifies that the user will maintain ownership of the data until the graph is executed. The upload pass will only use a reference to store the data. Use caution with this flag since graph execution is deferred! Useful to avoid the copy if the initial data lifetime is guaranteed to outlive the graph.
|
◆ ERDGPassFlags
Flags to annotate a pass with when calling AddPass.
| Enumerator |
|---|
| None | Pass doesn't have any inputs or outputs tracked by the graph. This may only be used by the parameterless AddPass function.
|
| Raster | Pass uses rasterization on the graphics pipe.
|
| Compute | Pass uses compute on the graphics pipe.
|
| AsyncCompute | Pass uses compute on the async compute pipe.
|
| Copy | Pass uses copy commands on the graphics pipe.
|
| NeverCull | Pass (and its producers) will never be culled. Necessary if outputs cannot be tracked by the graph.
|
| SkipRenderPass | Render pass begin / end is skipped and left to the user. Only valid when combined with 'Raster'. Disables render pass merging for the pass.
|
| NeverMerge | Pass will never have its render pass merged with other passes.
|
| NeverParallel | Pass will never run off the render thread.
|
| Readback | Pass uses copy commands but writes to a staging resource.
|
◆ ERDGPooledBufferAlignment
| Enumerator |
|---|
| None | |
| Page | |
| PowerOfTwo | |
◆ ERDGResourceExtractionFlags
| Enumerator |
|---|
| None | |
| AllowTransient | |
◆ ERDGSetupTaskWaitPoint
| Enumerator |
|---|
| Compile | (Default) Setup task is synced prior to compilation. Use this mode if task mutates RDG resources (e.g. RDG buffer upload contents, buffer size callbacks, etc)
|
| Execute | Setup task is synced prior to execution. Use this mode if your task is stalling in RDG and doesn't affect RDG compilation in any way.
|
| MAX | |
◆ ERDGTextureFlags
Flags to annotate a render graph texture.
| Enumerator |
|---|
| None | |
| MultiFrame | Tag the texture to survive through frame, that is important for multi GPU alternate frame rendering.
|
| SkipTracking | The buffer is ignored by RDG tracking and will never be transitioned. Use the flag when registering a buffer with no writable GPU flags. Write access is not allowed for the duration of the graph. This flag is intended as an optimization to cull out tracking of read-only buffers that are used frequently throughout the graph. Note that it's the user's responsibility to ensure the resource is in the correct readable state for use with RDG passes, as RDG does not know the exact state of the resource.
|
| ForceImmediateFirstBarrier | When set, RDG will perform its first barrier without splitting. Practically, this means the resource is left in its initial state until the first pass it's used within the graph. Without this flag, the resource is split-transitioned at the start of the graph.
|
| MaintainCompression | Prevents metadata decompression on this texture.
|
◆ ERDGUnorderedAccessViewFlags
Flags to annotate a view with when calling CreateUAV.
| Enumerator |
|---|
| None | |
| SkipBarrier | |
◆ ERDGViewableResourceType
The set of concrete parent resource types.
| Enumerator |
|---|
| Texture | |
| Buffer | |
| MAX | |
◆ ERDGViewType
The set of concrete view types.
| Enumerator |
|---|
| TextureUAV | |
| TextureSRV | |
| BufferUAV | |
| BufferSRV | |
| MAX | |
◆ ENUM_CLASS_FLAGS() [1/6]
◆ ENUM_CLASS_FLAGS() [2/6]
◆ ENUM_CLASS_FLAGS() [3/6]
◆ ENUM_CLASS_FLAGS() [4/6]
◆ ENUM_CLASS_FLAGS() [5/6]
◆ ENUM_CLASS_FLAGS() [6/6]
◆ GetParentType()
◆ GetResourceTransitionPlaneForMetadataAccess()
◆ GetViewableResourceType()
Returns the equivalent parent resource type for a view type.