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

#include <VirtualTextureSystem.h>

Public Member Functions

uint32 GetFrame () const
 
void Update (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, ISceneRenderer *SceneRenderer, const FVirtualTextureUpdateSettings &Settings)
 
void CallPendingCallbacks ()
 
TUniquePtr< FVirtualTextureUpdaterBeginUpdate (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, ISceneRenderer *SceneRenderer, const FVirtualTextureUpdateSettings &Settings)
 
void WaitForTasks (FVirtualTextureUpdater *Updater)
 
void EndUpdate (FRDGBuilder &GraphBuilder, TUniquePtr< FVirtualTextureUpdater > &&Updater, ERHIFeatureLevel::Type FeatureLevel)
 
void FinalizeRequests (FRDGBuilder &GraphBuilder, ISceneRenderer *SceneRenderer)
 
void ReleasePendingResources ()
 
IAllocatedVirtualTextureAllocateVirtualTexture (FRHICommandListBase &RHICmdList, const FAllocatedVTDescription &Desc)
 
void DestroyVirtualTexture (IAllocatedVirtualTexture *AllocatedVT)
 
FVirtualTextureProducerHandle RegisterProducer (FRHICommandListBase &RHICmdList, const FVTProducerDescription &InDesc, IVirtualTexture *InProducer)
 
void ReleaseProducer (const FVirtualTextureProducerHandle &Handle)
 
bool TryReleaseProducer (const FVirtualTextureProducerHandle &Handle)
 
void AddProducerDestroyedCallback (const FVirtualTextureProducerHandle &Handle, FVTProducerDestroyedFunction *Function, void *Baton)
 
uint32 RemoveAllProducerDestroyedCallbacks (const void *Baton)
 
IAdaptiveVirtualTextureAllocateAdaptiveVirtualTexture (FRHICommandListBase &RHICmdList, const FAdaptiveVTDescription &AdaptiveVTDesc, const FAllocatedVTDescription &AllocatedVTDesc)
 
void DestroyAdaptiveVirtualTexture (IAdaptiveVirtualTexture *AdaptiveVT)
 
void RequestTiles (const FVector2D &InScreenSpaceSize, int32 InMipLevel=-1)
 
void RequestTiles (const FMaterialRenderProxy *InMaterialRenderProxy, const FVector2D &InScreenSpaceSize, ERHIFeatureLevel::Type InFeatureLevel)
 
void RequestTiles (IAllocatedVirtualTexture *AllocatedVT, const FVector2D &InScreenSpaceSize, const FVector2D &InViewportPosition, const FVector2D &InViewportSize, const FVector2D &InUV0, const FVector2D &InUV1, int32 InMipLevel=-1)
 
void LoadPendingTiles (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel)
 
void SetMipLevelToLock (FVirtualTextureProducerHandle ProducerHandle, int32 InMipLevel)
 
void RequestRecordedTiles (TArray< uint64 > &&InPageRequests)
 
void FlushCache ()
 
void FlushCache (FVirtualTextureProducerHandle const &ProducerHandle, int32 SpaceID, FIntRect const &TextureRegion, uint32 MaxLevelToEvict, uint32 MaxAgeToKeepMapped, EVTInvalidatePriority InvalidatePriority)
 
FVector4f GetGlobalMipBias () const
 
bool IsPendingRootPageMap (IAllocatedVirtualTexture *AllocatedVT) const
 

Static Public Member Functions

static void Initialize ()
 
static void Shutdown ()
 
static FVirtualTextureSystemGet ()
 

Friends

class FFeedbackAnalysisTask
 
class FAddRequestedTilesTask
 
class FGatherRequestsTask
 
class FAllocatedVirtualTexture
 
class FAdaptiveVirtualTexture
 
class FVirtualTextureProducer
 
class FVirtualTextureProducerCollection
 
class FTexturePageMap
 
class FTexturePagePool
 
class FRendererModule
 

Member Function Documentation

◆ AddProducerDestroyedCallback()

void FVirtualTextureSystem::AddProducerDestroyedCallback ( const FVirtualTextureProducerHandle Handle,
FVTProducerDestroyedFunction Function,
void Baton 
)

◆ AllocateAdaptiveVirtualTexture()

IAdaptiveVirtualTexture * FVirtualTextureSystem::AllocateAdaptiveVirtualTexture ( FRHICommandListBase RHICmdList,
const FAdaptiveVTDescription AdaptiveVTDesc,
const FAllocatedVTDescription AllocatedVTDesc 
)

◆ AllocateVirtualTexture()

IAllocatedVirtualTexture * FVirtualTextureSystem::AllocateVirtualTexture ( FRHICommandListBase RHICmdList,
const FAllocatedVTDescription Desc 
)

◆ BeginUpdate()

TUniquePtr< FVirtualTextureUpdater > FVirtualTextureSystem::BeginUpdate ( FRDGBuilder GraphBuilder,
ERHIFeatureLevel::Type  FeatureLevel,
ISceneRenderer SceneRenderer,
const FVirtualTextureUpdateSettings Settings 
)

◆ CallPendingCallbacks()

void FVirtualTextureSystem::CallPendingCallbacks ( )

◆ DestroyAdaptiveVirtualTexture()

void FVirtualTextureSystem::DestroyAdaptiveVirtualTexture ( IAdaptiveVirtualTexture AdaptiveVT)

◆ DestroyVirtualTexture()

void FVirtualTextureSystem::DestroyVirtualTexture ( IAllocatedVirtualTexture AllocatedVT)

◆ EndUpdate()

void FVirtualTextureSystem::EndUpdate ( FRDGBuilder GraphBuilder,
TUniquePtr< FVirtualTextureUpdater > &&  Updater,
ERHIFeatureLevel::Type  FeatureLevel 
)

◆ FinalizeRequests()

void FVirtualTextureSystem::FinalizeRequests ( FRDGBuilder GraphBuilder,
ISceneRenderer SceneRenderer 
)

◆ FlushCache() [1/2]

void FVirtualTextureSystem::FlushCache ( )

◆ FlushCache() [2/2]

void FVirtualTextureSystem::FlushCache ( FVirtualTextureProducerHandle const &  ProducerHandle,
int32  SpaceID,
FIntRect const &  TextureRegion,
uint32  MaxLevelToEvict,
uint32  MaxAgeToKeepMapped,
EVTInvalidatePriority  InvalidatePriority 
)

◆ Get()

FVirtualTextureSystem & FVirtualTextureSystem::Get ( )
static

◆ GetFrame()

uint32 FVirtualTextureSystem::GetFrame ( ) const
inline

◆ GetGlobalMipBias()

FVector4f FVirtualTextureSystem::GetGlobalMipBias ( ) const

◆ Initialize()

void FVirtualTextureSystem::Initialize ( )
static

◆ IsPendingRootPageMap()

bool FVirtualTextureSystem::IsPendingRootPageMap ( IAllocatedVirtualTexture AllocatedVT) const

◆ LoadPendingTiles()

void FVirtualTextureSystem::LoadPendingTiles ( FRDGBuilder GraphBuilder,
ERHIFeatureLevel::Type  FeatureLevel 
)

◆ RegisterProducer()

FVirtualTextureProducerHandle FVirtualTextureSystem::RegisterProducer ( FRHICommandListBase RHICmdList,
const FVTProducerDescription InDesc,
IVirtualTexture InProducer 
)

◆ ReleasePendingResources()

void FVirtualTextureSystem::ReleasePendingResources ( )

◆ ReleaseProducer()

void FVirtualTextureSystem::ReleaseProducer ( const FVirtualTextureProducerHandle Handle)

◆ RemoveAllProducerDestroyedCallbacks()

uint32 FVirtualTextureSystem::RemoveAllProducerDestroyedCallbacks ( const void Baton)

◆ RequestRecordedTiles()

void FVirtualTextureSystem::RequestRecordedTiles ( TArray< uint64 > &&  InPageRequests)

◆ RequestTiles() [1/3]

void FVirtualTextureSystem::RequestTiles ( const FMaterialRenderProxy InMaterialRenderProxy,
const FVector2D InScreenSpaceSize,
ERHIFeatureLevel::Type  InFeatureLevel 
)

◆ RequestTiles() [2/3]

void FVirtualTextureSystem::RequestTiles ( const FVector2D InScreenSpaceSize,
int32  InMipLevel = -1 
)

◆ RequestTiles() [3/3]

void FVirtualTextureSystem::RequestTiles ( IAllocatedVirtualTexture AllocatedVT,
const FVector2D InScreenSpaceSize,
const FVector2D InViewportPosition,
const FVector2D InViewportSize,
const FVector2D InUV0,
const FVector2D InUV1,
int32  InMipLevel = -1 
)

Helper function to request loading of tiles for a virtual texture that will be displayed in the UI. It will request only the tiles that will be visible after clipping to the provided viewport.

Parameters
AllocatedVTThe virtual texture.
InScreenSpaceSizeSize on screen at which the texture is to be displayed.
InViewportPositionPosition in the viewport where the texture will be displayed.
InViewportSizeSize of the viewport.
InUV0UV coordinate to use for the top left corner of the texture.
InUV1UV coordinate to use for the bottom right corner of the texture.
InMipLevel[optional] Specific mip level to fetch tiles for.

◆ SetMipLevelToLock()

void FVirtualTextureSystem::SetMipLevelToLock ( FVirtualTextureProducerHandle  ProducerHandle,
int32  InMipLevel 
)

◆ Shutdown()

void FVirtualTextureSystem::Shutdown ( )
static

◆ TryReleaseProducer()

bool FVirtualTextureSystem::TryReleaseProducer ( const FVirtualTextureProducerHandle Handle)

◆ Update()

void FVirtualTextureSystem::Update ( FRDGBuilder GraphBuilder,
ERHIFeatureLevel::Type  FeatureLevel,
ISceneRenderer SceneRenderer,
const FVirtualTextureUpdateSettings Settings 
)

◆ WaitForTasks()

void FVirtualTextureSystem::WaitForTasks ( FVirtualTextureUpdater Updater)

Friends And Related Symbol Documentation

◆ FAdaptiveVirtualTexture

◆ FAddRequestedTilesTask

◆ FAllocatedVirtualTexture

◆ FFeedbackAnalysisTask

◆ FGatherRequestsTask

◆ FRendererModule

friend class FRendererModule
friend

◆ FTexturePageMap

friend class FTexturePageMap
friend

◆ FTexturePagePool

friend class FTexturePagePool
friend

◆ FVirtualTextureProducer

◆ FVirtualTextureProducerCollection


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