UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FRDGViewableResource Class Reference

#include <RenderGraphResources.h>

+ Inheritance diagram for FRDGViewableResource:

Classes

struct  FAccessModeState
 

Public Member Functions

bool IsExternal () const
 
bool IsExtracted () const
 
bool HasBeenProduced () const
 
void SetOwnerName (const FName &InOwnerName)
 
bool IsDebugNameHeapAllocated () const
 
- Public Member Functions inherited from FRDGResource
 FRDGResource (const FRDGResource &)=delete
 
virtual ~FRDGResource ()=default
 
virtual RENDERCORE_API void MarkResourceAsUsed ()
 The following methods may only be called during pass execution.
 
FRHIResourceGetRHI () const
 

Public Attributes

const ERDGViewableResourceType Type
 
- Public Attributes inherited from FRDGResource
const TCHAR *const Name = nullptr
 

Protected Types

enum class  ETransientExtractionHint : uint8 { None , Disable , Enable }
 
enum class  EAccessMode : uint8 { Internal , External }
 

Protected Member Functions

RENDERCORE_API FRDGViewableResource (const TCHAR *InName, ERDGViewableResourceType InType, bool bSkipTracking, bool bImmediateFirstBarrier)
 
bool IsCullRoot () const
 
- Protected Member Functions inherited from FRDGResource
 FRDGResource (const TCHAR *InName)
 
FRHIResourceGetRHIUnchecked () const
 
bool HasRHI () const
 
RENDERCORE_API void ValidateRHIAccess () const
 

Protected Attributes

uint8 bExternal: 1
 
uint8 bExtracted: 1
 
uint8 bProduced: 1
 
uint8 bTransient: 1
 
uint8 bForceNonTransient: 1
 
uint8 bSkipLastTransition: 1
 
uint8 bSplitFirstTransition: 1
 
uint8 bQueuedForUpload: 1
 
uint8 bCollectForAllocate: 1
 
uint8 bClobbered: 1
 
ETransientExtractionHint TransientExtractionHint
 
struct FRDGViewableResource::FAccessModeState AccessModeState
 
FRDGPassHandle AcquirePass
 
FRDGPassHandle DiscardPass
 
FRDGPassHandle FirstPass
 
FRDGPassHandlesByPipeline LastPasses
 
uint32 ReferenceCount
 
uint32 PassStateIndex = 0
 
TArrayView< const FRHITransientAliasingOverlapAliasingOverlaps
 
ERHIAccess EpilogueAccess = DefaultEpilogueAccess
 
- Protected Attributes inherited from FRDGResource
FRHIResourceResourceRHI = nullptr
 

Static Protected Attributes

static const ERHIAccess DefaultEpilogueAccess = ERHIAccess::SRVMask
 

Friends

bool IsExtendedLifetimeResource (FRDGViewableResource *)
 

Detailed Description

A render graph resource with an allocation lifetime tracked by the graph. May have child resources which reference it (e.g. views).

Member Enumeration Documentation

◆ EAccessMode

enum class FRDGViewableResource::EAccessMode : uint8
strongprotected
Enumerator
Internal 
External 

◆ ETransientExtractionHint

Enumerator
None 
Disable 
Enable 

Constructor & Destructor Documentation

◆ FRDGViewableResource()

FRDGViewableResource::FRDGViewableResource ( const TCHAR InName,
ERDGViewableResourceType  InType,
bool  bSkipTracking,
bool  bImmediateFirstBarrier 
)
protected

Member Function Documentation

◆ HasBeenProduced()

bool FRDGViewableResource::HasBeenProduced ( ) const
inline

Whether a prior pass added to the graph produced contents for this resource. External resources are not considered produced until used for a write operation. This is a union of all subresources, so any subresource write will set this to true.

◆ IsCullRoot()

bool FRDGViewableResource::IsCullRoot ( ) const
inlineprotected

◆ IsDebugNameHeapAllocated()

bool FRDGViewableResource::IsDebugNameHeapAllocated ( ) const
inline

◆ IsExternal()

bool FRDGViewableResource::IsExternal ( ) const
inline

Whether this resource is externally registered with the graph (i.e. the user holds a reference to the underlying resource outside the graph).

◆ IsExtracted()

bool FRDGViewableResource::IsExtracted ( ) const
inline

Whether this resource is has been queued for extraction at the end of graph execution.

◆ SetOwnerName()

void FRDGViewableResource::SetOwnerName ( const FName InOwnerName)
inline

Friends And Related Symbol Documentation

◆ IsExtendedLifetimeResource

bool IsExtendedLifetimeResource ( FRDGViewableResource )
friend

Member Data Documentation

◆ AccessModeState

struct FRDGViewableResource::FAccessModeState FRDGViewableResource::AccessModeState
protected

◆ AcquirePass

FRDGPassHandle FRDGViewableResource::AcquirePass
protected

◆ AliasingOverlaps

TArrayView<const FRHITransientAliasingOverlap> FRDGViewableResource::AliasingOverlaps
protected

Set of aliasing overlaps to apply to the acquire transition if transient.

◆ bClobbered

uint8 FRDGViewableResource::bClobbered
protected

◆ bCollectForAllocate

uint8 FRDGViewableResource::bCollectForAllocate
protected

If false, the resource needs to be collected.

◆ bExternal

uint8 FRDGViewableResource::bExternal
protected

Whether this is an externally registered resource.

◆ bExtracted

uint8 FRDGViewableResource::bExtracted
protected

Whether this is an extracted resource.

◆ bForceNonTransient

uint8 FRDGViewableResource::bForceNonTransient
protected

Whether this resource cannot be made transient.

◆ bProduced

uint8 FRDGViewableResource::bProduced
protected

Whether any sub-resource has been used for write by a pass.

◆ bQueuedForUpload

uint8 FRDGViewableResource::bQueuedForUpload
protected

If true, the resource has been queued for an upload operation.

◆ bSkipLastTransition

uint8 FRDGViewableResource::bSkipLastTransition
protected

If true, the graph will skip the last graph transition. Used for aliased pooled resources.

◆ bSplitFirstTransition

uint8 FRDGViewableResource::bSplitFirstTransition
protected

If true, this resource should skip the first split barrier and perform transition right away.

◆ bTransient

uint8 FRDGViewableResource::bTransient
protected

Whether this resource is allocated through the transient resource allocator.

◆ DefaultEpilogueAccess

const ERHIAccess FRDGViewableResource::DefaultEpilogueAccess = ERHIAccess::SRVMask
staticprotected

◆ DiscardPass

FRDGPassHandle FRDGViewableResource::DiscardPass
protected

◆ EpilogueAccess

ERHIAccess FRDGViewableResource::EpilogueAccess = DefaultEpilogueAccess
protected

The state of the resource at the graph epilogue.

◆ FirstPass

FRDGPassHandle FRDGViewableResource::FirstPass
protected

◆ LastPasses

FRDGPassHandlesByPipeline FRDGViewableResource::LastPasses
protected

◆ PassStateIndex

uint32 FRDGViewableResource::PassStateIndex = 0
protected

Scratch index allocated for the resource in the pass being setup.

◆ ReferenceCount

uint32 FRDGViewableResource::ReferenceCount
protected

Number of references in passes and deferred queries.

◆ TransientExtractionHint

ETransientExtractionHint FRDGViewableResource::TransientExtractionHint
protected

Whether this resource is allowed to be both transient and extracted.

◆ Type

const ERDGViewableResourceType FRDGViewableResource::Type

The type of this resource; useful for casting between types.


The documentation for this class was generated from the following files: