Update nexus wiki content
This commit is contained in:
@@ -1,40 +1,45 @@
|
||||
---
|
||||
title: "Runtime Virtual Texturing"
|
||||
title: "RuntimeVirtualTexturing"
|
||||
type: concept
|
||||
tags: ["unreal-engine", "landscape", "texturing", "ue5", "performance"]
|
||||
sources: ["unreal-world-builder", "unreal-technical-artist"]
|
||||
last_updated: 2026-04-26
|
||||
tags: ["unreal-engine", "texturing", "landscape", "performance"]
|
||||
sources: ["unreal-world-builder"]
|
||||
last_updated: 2026-04-30
|
||||
---
|
||||
|
||||
## Aliases
|
||||
- RVT
|
||||
- Runtime Virtual Texturing
|
||||
- 运行时虚拟纹理
|
||||
|
||||
## Definition
|
||||
Runtime Virtual Texturing(RVT),UE5 运行时虚拟纹理技术,通过将多层地形纹理混合计算结果缓存到虚拟纹理图集(Virtual Texture Atlas),消除逐像素层混合的 shader 开销。当地形材质层数超过 2 层时,RVT 成为必选项而非可选项。
|
||||
Runtime Virtual Texturing(RVT)是 Unreal Engine 5 的按需虚拟纹理技术,允许材质在运行时动态渲染到虚拟纹理空间,而非在着色器中实时计算多层混合。对于 Landscape 地形(> 2 层材质)和需要动态混合的复杂材质,RVT 是关键性能优化手段。
|
||||
|
||||
## Core Mechanism
|
||||
- **Virtual Texture Atlas**:多层混合结果以瓦片(Tile)为单位缓存,按需流送到 GPU
|
||||
- **RVT Resolution**:通常 2048×2048 每 4096m² 网格单元
|
||||
- **RVT Format**:推荐 YCoCg 压缩格式,相比 RGBA 节省内存
|
||||
- **Producer**:Landscape Actor 启用 Virtual Texture Producer;需要对应的 RVT Output Volume 放置在世界每个网格单元
|
||||
## RVT vs Traditional Layer Blending
|
||||
| 方案 | 层数限制 | 性能特征 |
|
||||
|------|---------|---------|
|
||||
| 传统逐像素混合 | 2 层以内 | 层数增加线性增长 |
|
||||
| RVT | 无硬性限制(实践建议 ≤ 8) | 固定虚拟纹理采样开销 |
|
||||
|
||||
## When RVT is Required
|
||||
| 条件 | RVT 建议 |
|
||||
|------|----------|
|
||||
| ≤2 层 Landscape 材质 | 可选,性能提升有限 |
|
||||
| >2 层 Landscape 材质 | **必须启用**,否则产生材质排列组合爆炸 |
|
||||
| 开放世界(World Partition) | **必须启用**,与流送系统协同 |
|
||||
## Landscape 中的 RVT
|
||||
- 超过 2 层 Landscape 材质时**必须**启用 RVT
|
||||
- **RVT 分辨率**:每 4096m² 格子 2048×2048
|
||||
- **RVT 格式**:YCoCg 压缩(节省内存,相较 RGBA)
|
||||
- **Virtual Texture Producer**:必须在 Landscape Actor 上启用
|
||||
- **RVT Output Volume**:每 4096m² 格子对齐放置
|
||||
|
||||
## RVT in Landscape Material Design
|
||||
典型四层 Landscape 材质结构(配合 RVT):
|
||||
1. **Grass**:基础层,始终存在,填充空区域
|
||||
2. **Dirt/Path**:沿路径替换草地
|
||||
3. **Rock**:坡度驱动(WorldAlignedBlend,斜率阈值 0.6 自动切换)
|
||||
4. **Snow**:高度驱动(超过 SnowLine 高度参数时淡入)
|
||||
## Dynamic RVT Applications
|
||||
RVT 可采样运行时数据驱动地形状态变化:
|
||||
- 游戏标签(Gameplay Tags)驱动地形层权重
|
||||
- Decal Actor 投影湿气/雪/泥效果
|
||||
- 雨积累参数驱动 RVT 混合权重趋向湿表面层
|
||||
|
||||
Auto-Slope Rock Blend:`dot(WorldUp, SurfaceNormal) < 0.6` → Rock 层渐变到 Grass/Dirt
|
||||
## RVT Cache Warm-Up
|
||||
Cinematic Camera 场景前必须预热 RVT Cache,否则初次渲染出现 LOD 闪烁。
|
||||
|
||||
## RVT for Dynamic Gameplay State
|
||||
高级应用:RVT 权重混合可采样 Gameplay Tags 或 Decal Actor,驱动动态地形状态变化(如降雨累积 → 湿滑表面层)。
|
||||
## Connections
|
||||
- [[Landscape]] ← 层混合优化 ← RuntimeVirtualTexturing
|
||||
- [[UnrealWorldBuilder]] ← 地形材质 ← RuntimeVirtualTexturing
|
||||
- [[UnrealEngine5]] ← 核心引擎 ← RuntimeVirtualTexturing
|
||||
|
||||
## Related
|
||||
- [[UnrealWorldBuilder]] — RVT 配置与调优专家
|
||||
- [[UnrealTechnicalArtist]] — Landscape Master Material 构建与 RVT Output Volume 放置
|
||||
- [[Landscape]] — RVT 是 Landscape 材质系统的性能关键
|
||||
## Sources
|
||||
- [[unreal-world-builder]]
|
||||
|
||||
Reference in New Issue
Block a user