UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FTransferResourceParams Struct Reference

#include <RHIContext.h>

Public Member Functions

 FTransferResourceParams ()
 
 FTransferResourceParams (FRHITexture *InTexture, const FIntRect &InRect, uint32 InSrcGPUIndex, uint32 InDestGPUIndex, bool InPullData, bool InLockStepGPUs)
 
 FTransferResourceParams (FRHITexture *InTexture, uint32 InSrcGPUIndex, uint32 InDestGPUIndex, bool InPullData, bool InLockStepGPUs)
 
 FTransferResourceParams (FRHIBuffer *InBuffer, uint32 InSrcGPUIndex, uint32 InDestGPUIndex, bool InPullData, bool InLockStepGPUs)
 
void SetRect (const FIntRect &Rect)
 

Public Attributes

FTextureRHIRef Texture
 
FBufferRHIRef Buffer
 
FIntVector Min
 
FIntVector Max
 
uint32 SrcGPUIndex
 
uint32 DestGPUIndex
 
bool bPullData = true
 
bool bLockStepGPUs = true
 
FTransferResourceFenceDataDelayedFence = nullptr
 
FTransferResourceFenceDataPreTransferFence = nullptr
 

Detailed Description

Parameters for RHITransferResources, used to copy memory between GPUs

Constructor & Destructor Documentation

◆ FTransferResourceParams() [1/4]

FTransferResourceParams::FTransferResourceParams ( )
inline

◆ FTransferResourceParams() [2/4]

FTransferResourceParams::FTransferResourceParams ( FRHITexture InTexture,
const FIntRect InRect,
uint32  InSrcGPUIndex,
uint32  InDestGPUIndex,
bool  InPullData,
bool  InLockStepGPUs 
)
inline

◆ FTransferResourceParams() [3/4]

FTransferResourceParams::FTransferResourceParams ( FRHITexture InTexture,
uint32  InSrcGPUIndex,
uint32  InDestGPUIndex,
bool  InPullData,
bool  InLockStepGPUs 
)
inline

◆ FTransferResourceParams() [4/4]

FTransferResourceParams::FTransferResourceParams ( FRHIBuffer InBuffer,
uint32  InSrcGPUIndex,
uint32  InDestGPUIndex,
bool  InPullData,
bool  InLockStepGPUs 
)
inline

Member Function Documentation

◆ SetRect()

void FTransferResourceParams::SetRect ( const FIntRect Rect)
inline

Member Data Documentation

◆ bLockStepGPUs

bool FTransferResourceParams::bLockStepGPUs = true

◆ bPullData

bool FTransferResourceParams::bPullData = true

◆ Buffer

FBufferRHIRef FTransferResourceParams::Buffer

◆ DelayedFence

FTransferResourceFenceData* FTransferResourceParams::DelayedFence = nullptr

Optional pointer where fence data can be written if you want to delay waiting on the GPU fence for a resource transfer. Should be created via "RHICreateTransferResourceFenceData", and must later be consumed via "TransferResourceWait" command. Note that it is valid to consume the fence data, even if you don't end up implementing a transfer that uses it – it will behave as a nop in that case. That can simplify cases where the transfer may be conditional, and you don't want to worry about whether it occurred or not, but need to reserve the possibility.

◆ DestGPUIndex

uint32 FTransferResourceParams::DestGPUIndex

◆ Max

FIntVector FTransferResourceParams::Max

◆ Min

FIntVector FTransferResourceParams::Min

◆ PreTransferFence

FTransferResourceFenceData* FTransferResourceParams::PreTransferFence = nullptr

Optional pointer to a fence to wait on before starting the transfer. Useful if a resource may be in use on the destination GPU, and you need to wait until it's no longer in use before copying to it from the current GPU. Fences are created via "RHICreateTransferResourceFenceData", then signaled via "TransferResourceSignal" command, before being added to one of the transfers in a batch that's dependent on the signal.

◆ SrcGPUIndex

uint32 FTransferResourceParams::SrcGPUIndex

◆ Texture

FTextureRHIRef FTransferResourceParams::Texture

The documentation for this struct was generated from the following file: