UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
RuntimeVirtualTextureRender.cpp File Reference

Classes

class  RuntimeVirtualTexture::FEtcParametersUniformBuffer
 
class  RuntimeVirtualTexture::FAstcParametersUniformBuffer
 
class  RuntimeVirtualTexture::FShader_VirtualTextureMaterialDraw
 
class  RuntimeVirtualTexture::FMaterialPolicy_BaseColor
 
class  RuntimeVirtualTexture::FMaterialPolicy_BaseColorNormalSpecular
 
class  RuntimeVirtualTexture::FMaterialPolicy_BaseColorNormalRoughness
 
class  RuntimeVirtualTexture::FMaterialPolicy_Mask4
 
class  RuntimeVirtualTexture::FMaterialPolicy_WorldHeight
 
class  RuntimeVirtualTexture::FMaterialPolicy_Displacement
 
class  RuntimeVirtualTexture::FShader_VirtualTextureMaterialDraw_VS< MaterialPolicy >
 
class  RuntimeVirtualTexture::FShader_VirtualTextureMaterialDraw_PS< MaterialPolicy >
 
struct  RuntimeVirtualTexture::FRenderGraphSetup
 
struct  RuntimeVirtualTexture::FRenderGraphSetup::FInitDesc
 
class  RuntimeVirtualTexture::FBatchRenderContext
 
class  RuntimeVirtualTexture::FRuntimeVirtualTextureMeshProcessor
 
class  RuntimeVirtualTexture::FDynamicMeshCollector
 
class  RuntimeVirtualTexture::FShader_VirtualTextureCompress
 
class  RuntimeVirtualTexture::FShader_VirtualTextureCompress_CS< MaterialType >
 
class  RuntimeVirtualTexture::FShader_VirtualTextureCopy
 
class  RuntimeVirtualTexture::FShader_VirtualTextureCopy_VS
 
class  RuntimeVirtualTexture::FShader_VirtualTextureCopy_PS< MaterialType >
 

Namespaces

namespace  RuntimeVirtualTexture
 

Macros

#define WEIGHT_QUANTIZE_NUM   32
 
#define IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE(PolicyType, PolicyName)
 

Functions

 CSV_DECLARE_CATEGORY_EXTERN (VirtualTexturing)
 
 DECLARE_DWORD_COUNTER_STAT (TEXT("Num pages rendered"), STAT_RenderedPages, STATGROUP_VirtualTexturing)
 
 RuntimeVirtualTexture::IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT (FEtcParameters, "EtcParameters")
 
const TUniformBufferRef< FEtcParameters > & RuntimeVirtualTexture::GetEtcParametersUniformBufferRef ()
 
 RuntimeVirtualTexture::IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT (FAstcParameters, "AstcParameters")
 
const TUniformBufferRef< FAstcParameters > & RuntimeVirtualTexture::GetAstcParametersUniformBufferRef ()
 
bool RuntimeVirtualTexture::UseEtcProfile (EShaderPlatform ShaderPlatform)
 
bool RuntimeVirtualTexture::UseAstcProfile (EShaderPlatform ShaderPlatform)
 
bool RuntimeVirtualTexture::UseAstcHighProfile (EShaderPlatform ShaderPlatform)
 
bool RuntimeVirtualTexture::UseRGBA16 (EShaderPlatform ShaderPlatform)
 
 RuntimeVirtualTexture::IMPLEMENT_STATIC_UNIFORM_BUFFER_STRUCT (FRuntimeVirtualTexturePassParameters, "RuntimeVirtualTexturePassParameters", DeferredDecals)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_BaseColor, BaseColor)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_BaseColorNormalRoughness, BaseColorNormalRoughness)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_BaseColorNormalSpecular, BaseColorNormalSpecular)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_Mask4, Mask4)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_WorldHeight, WorldHeight)
 
 RuntimeVirtualTexture::IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (FMaterialPolicy_Displacement, Displacement)
 
FMeshPassProcessorRuntimeVirtualTexture::CreateRuntimeVirtualTexturePassProcessor (ERHIFeatureLevel::Type FeatureLevel, const FScene *Scene, const FSceneView *InViewIfDynamicMeshCommand, FMeshPassDrawListContext *InDrawListContext)
 
 RuntimeVirtualTexture::REGISTER_MESHPASSPROCESSOR_AND_PSOCOLLECTOR (VirtualTexturePass, CreateRuntimeVirtualTexturePassProcessor, EShadingPath::Deferred, EMeshPass::VirtualTexture, EMeshPassFlags::CachedMeshCommands)
 
 RuntimeVirtualTexture::REGISTER_MESHPASSPROCESSOR_AND_PSOCOLLECTOR (VirtualTexturePassMobile, CreateRuntimeVirtualTexturePassProcessor, EShadingPath::Mobile, EMeshPass::VirtualTexture, EMeshPassFlags::CachedMeshCommands)
 
void RuntimeVirtualTexture::GatherMeshesToDraw (FDynamicPassMeshDrawListContext *DynamicMeshPassContext, FRDGBuilder &GraphBuilder, FScene *Scene, FViewInfo *View, ERuntimeVirtualTextureMaterialType MaterialType, int32 RuntimeVirtualTextureId, uint8 vLevel, uint8 MaxLevel, bool bAllowCachedMeshDrawCommands)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::BaseColor >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressBaseColorCS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressBaseColorNormalSpecularCS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Roughness >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressBaseColorNormalRoughnessCS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular_YCoCg >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressBaseColorNormalSpecularYCoCgCS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular_Mask_YCoCg >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressBaseColorNormalSpecularMaskYCoCgCS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::Mask4 >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressMask4CS"), SF_Compute)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCompress_CS< ERuntimeVirtualTextureMaterialType::Displacement >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CompressDisplacementCS"), SF_Compute)
 
template<ERuntimeVirtualTextureMaterialType MaterialType>
void RuntimeVirtualTexture::AddCompressPass (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FShader_VirtualTextureCompress::FParameters *Parameters, FIntVector GroupCount, bool bDirectAliasing)
 
void RuntimeVirtualTexture::AddCompressPass (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FShader_VirtualTextureCompress::FParameters *Parameters, FIntPoint TextureSize, int32 NumSlices, ERuntimeVirtualTextureMaterialType MaterialType, bool bDirectAliasing)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (, FShader_VirtualTextureCopy_VS, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyVS"), SF_Vertex)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::BaseColor >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyBaseColorPS"), SF_Pixel)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyBaseColorNormalSpecularPS"), SF_Pixel)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular_YCoCg >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyBaseColorNormalSpecularYCoCgPS"), SF_Pixel)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::BaseColor_Normal_Specular_Mask_YCoCg >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyBaseColorNormalSpecularMaskYCoCgPS"), SF_Pixel)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::Mask4 >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyMask4PS"), SF_Pixel)
 
 RuntimeVirtualTexture::IMPLEMENT_SHADER_TYPE (template<>, FShader_VirtualTextureCopy_PS< ERuntimeVirtualTextureMaterialType::WorldHeight >, TEXT("/Engine/Private/VirtualTextureCompress.usf"), TEXT("CopyWorldHeightPS"), SF_Pixel)
 
template<ERuntimeVirtualTextureMaterialType MaterialType>
void RuntimeVirtualTexture::AddCopyPass (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FShader_VirtualTextureCopy::FParameters *Parameters, FIntPoint TextureSize)
 
void RuntimeVirtualTexture::AddCopyPass (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FShader_VirtualTextureCopy::FParameters *Parameters, FIntPoint TextureSize, ERuntimeVirtualTextureMaterialType MaterialType)
 
void RuntimeVirtualTexture::AddCopyThumbnailPass (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FShader_VirtualTextureCopy::FParameters *Parameters, FIntPoint TextureSize, ERuntimeVirtualTextureMaterialType MaterialType)
 
void RuntimeVirtualTexture::MeshPassPrologue (FRHICommandList &RHICmdList, FIntRect const &InViewRect, int32 InPageIndex, EShaderPlatform InShaderPlatform)
 
FLinearColor RuntimeVirtualTexture::GetDebugMipLevelColor (bool bInAllowMipDebug, uint32 InLevel, uint32 InTileAndBorderSize)
 
void RuntimeVirtualTexture::RenderPage (FRDGBuilder &GraphBuilder, FBatchRenderContext const &BatchRenderContext, int32 PageIndex)
 
void RuntimeVirtualTexture::CopyPage (FRDGBuilder &GraphBuilder, FBatchRenderContext const &BatchRenderContext, int32 PageIndex)
 
void RuntimeVirtualTexture::CompressPages (FRDGBuilder &GraphBuilder, FBatchRenderContext const &BatchRenderContext)
 
void RuntimeVirtualTexture::CopyPagesToOutput (FRDGBuilder &GraphBuilder, FBatchRenderContext const &BatchRenderContext)
 
bool RuntimeVirtualTexture::IsSceneReadyToRender (FSceneInterface *Scene)
 
FBatchRenderContext const * RuntimeVirtualTexture::InitPageBatch (FRDGBuilder &GraphBuilder, FRenderPageBatchDesc const &InDesc)
 
void RuntimeVirtualTexture::RenderPageBatch (FRDGBuilder &GraphBuilder, FBatchRenderContext const &InContext)
 
void RuntimeVirtualTexture::FinalizePageBatch (FRDGBuilder &GraphBuilder, FBatchRenderContext const &InContext)
 
void RuntimeVirtualTexture::RenderPages (FRDGBuilder &GraphBuilder, FRenderPageBatchDesc const &InDesc)
 
uint32 RuntimeVirtualTexture::GetRuntimeVirtualTextureSceneIndex_GameThread (URuntimeVirtualTextureComponent *InComponent)
 

Variables

int32 RuntimeVirtualTexture::RenderCaptureNextRVTPagesDraws = 0
 

Macro Definition Documentation

◆ IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE

#define IMPLEMENT_VIRTUALTEXTURE_SHADER_TYPE (   PolicyType,
  PolicyName 
)
Value:
IMPLEMENT_MATERIAL_SHADER_TYPE(template<>,TVirtualTextureVS##PolicyName, TEXT("/Engine/Private/VirtualTextureMaterial.usf"), TEXT("MainVS"), SF_Vertex); \
IMPLEMENT_MATERIAL_SHADER_TYPE(template<>,TVirtualTexturePS##PolicyName, TEXT("/Engine/Private/VirtualTextureMaterial.usf"), TEXT("MainPS"), SF_Pixel);
#define TEXT(x)
Definition Platform.h:1272
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
@ SF_Vertex
Definition RHIDefinitions.h:203
@ SF_Pixel
Definition RHIDefinitions.h:206

◆ WEIGHT_QUANTIZE_NUM

#define WEIGHT_QUANTIZE_NUM   32

Function Documentation

◆ CSV_DECLARE_CATEGORY_EXTERN()

CSV_DECLARE_CATEGORY_EXTERN ( VirtualTexturing  )

◆ DECLARE_DWORD_COUNTER_STAT()

DECLARE_DWORD_COUNTER_STAT ( TEXT("Num pages rendered" ,
STAT_RenderedPages  ,
STATGROUP_VirtualTexturing   
)