UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VirtualTexture Namespace Reference

Classes

struct  FFeedbackShaderParams
 

Functions

void Recreate ()
 
void Recreate (TConstArrayView< TEnumAsByte< EPixelFormat > > InFormat)
 
RENDERER_API void BeginFeedback (FRDGBuilder &GraphBuilder, uint32 InBufferSize=0, ERHIFeatureLevel::Type InFeatureLevel=GMaxRHIFeatureLevel)
 
RENDERER_API void BeginFeedback (FRDGBuilder &GraphBuilder, FIntPoint InViewportSize, uint32 InVirtualTextureFeedbackTileSize, bool bInExtendFeedbackForDebug, ERHIFeatureLevel::Type InFeatureLevel)
 
RENDERER_API void EndFeedback (FRDGBuilder &GraphBuilder)
 
RENDERER_API void GetFeedbackShaderParams (int32 InFrameIndex, int32 InVirtualTextureFeedbackTileSize, FFeedbackShaderParams &OutParams)
 
RENDERER_API void GetFeedbackShaderParams (FFeedbackShaderParams &OutParams)
 
RENDERER_API void UpdateViewUniformShaderParameters (FFeedbackShaderParams const &InParams, FViewUniformShaderParameters &ViewUniformShaderParameters)
 
FRDGBufferResolveExtendedDebugBuffer (FRDGBuilder &GraphBuilder)
 

Function Documentation

◆ BeginFeedback() [1/2]

void VirtualTexture::BeginFeedback ( FRDGBuilder GraphBuilder,
FIntPoint  InViewportSize,
uint32  InVirtualTextureFeedbackTileSize,
bool  bInExtendFeedbackForDebug,
ERHIFeatureLevel::Type  InFeatureLevel 
)

Begin a virtual texture feedback scope. InViewportSize and InVirtualTextureFeedbackTileSize are used to calculate the feedback buffer size. If bInExtendFeedbackForDebug is true we will allocate room at the end of the feedback buffer to capture extra debug info. Note that there is only one global feedback buffer alive at any time and its buffer size is later used internally by GetFeedbackShaderParams().

◆ BeginFeedback() [2/2]

void VirtualTexture::BeginFeedback ( FRDGBuilder GraphBuilder,
uint32  InBufferSize = 0,
ERHIFeatureLevel::Type  InFeatureLevel = GMaxRHIFeatureLevel 
)

Begin a virtual texture feedback scope. The feedback buffer size will be InBufferSize. If InBufferSize is 0 a default size is used. Note that there is only one global feedback buffer alive at any time and its buffer size is later used internally by GetFeedbackShaderParams().

◆ EndFeedback()

void VirtualTexture::EndFeedback ( FRDGBuilder GraphBuilder)

End a virtual texture feedback scope.

◆ GetFeedbackShaderParams() [1/2]

void VirtualTexture::GetFeedbackShaderParams ( FFeedbackShaderParams OutParams)

Get virtual texture feedback parameters to use for binding to any shader that is sampling virtual textures. This version uses an internal scene frame counter, and the project default feedback tile size. This is only valid within a BeginFeedback()/EndFeedback() scope.

◆ GetFeedbackShaderParams() [2/2]

void VirtualTexture::GetFeedbackShaderParams ( int32  InFrameIndex,
int32  InVirtualTextureFeedbackTileSize,
FFeedbackShaderParams OutParams 
)

Get virtual texture feedback parameters to use for binding to any shader that is sampling virtual textures. This is only valid within a BeginFeedback()/EndFeedback() scope.

◆ Recreate() [1/2]

void VirtualTexture::Recreate ( )

Reinitialize all virtual texture producers.

◆ Recreate() [2/2]

void VirtualTexture::Recreate ( TConstArrayView< TEnumAsByte< EPixelFormat > >  InFormat)

Reinitialize all virtual texture that match the passed in format.

◆ ResolveExtendedDebugBuffer()

FRDGBuffer * VirtualTexture::ResolveExtendedDebugBuffer ( FRDGBuilder GraphBuilder)

This resolves any extended debug information that is currently stored at the end of the feedback buffer and returns a buffer that contains it. This is only valid within a BeginFeedback()/EndFeedback() scope.

◆ UpdateViewUniformShaderParameters()

void VirtualTexture::UpdateViewUniformShaderParameters ( FFeedbackShaderParams const &  InParams,
FViewUniformShaderParameters ViewUniformShaderParameters 
)

Helper to copy the virtual texture feedback shader parameters into the view parameters to be bound in the view uniform buffer.