鹰角网络 · 2020.05 - 2022.01
来自星尘 / Ex Astris
Render Pipeline / Terrain / Vegetation / Runtime Virtual Texture / World Rendering
在来自星尘,我负责 Terrain、Vegetation、Runtime Virtual Texture 等世界渲染功能,也处理 pass 组织和平台扩展。

问题与目标
大规模场景同时受到实例数量、剔除策略、纹理管理、overdraw 和平台差异影响,单点优化难以支撑后续内容扩展。
设计与实现
- 处理 Terrain、Vegetation、Runtime Virtual Texture 等系统,将场景规模、剔除、纹理和 pass 组织放在同一张技术图上。
- 在地形和植被中分别使用 CPU-SIMD 与 GPU-SIMT 剔除策略,覆盖树木、草地和地形等复杂场景。
- 使用 Runtime Virtual Texture 缓解多层地表材质带来的 Pixel Overdraw 和采样压力。
地形、植被和 Runtime VT 被拆成可检查的世界渲染基础设施,服务大规模场景生产和平台成本控制。
01 / Instanced Terrain / CPU + GPU Culling
Terrain System
Terrain 是世界渲染的基础层,核心关系是网格密度、视距、剔除和平台成本。
- Instanced 地形路径减少重复提交和数据搬运,改善大规模地形的数据组织。
- CPU-SIMD 与 GPU-SIMT 剔除策略按平台、密度和场景规模切换成本结构。
- 线框、运行时效果和性能信息共同构成系统证据,不只展示最终画面。
02 / Instanced Vegetation / Dual Culling Backend
Vegetation System
Vegetation 面向大规模草木实例,核心问题是对象数量、剔除频率、绘制提交和视觉密度。
- 实例化植被减少对象级开销,将大量草木转成可管理的数据批次。
- 双 culling backend 按平台、视距、密度和场景复杂度调整剔除策略。
- Vegetation 与 Terrain、Runtime VT 共同构成世界渲染基础设施。
03 / Splat-Layer / Pixel Overdraw / Mobile Cost
Runtime Virtual Texture
Runtime VT 用于处理多层地表混合带来的 Pixel Overdraw 和采样压力,把复杂地表交给纹理管理。
- 将多层地形材质的像素成本转移到 Runtime Virtual Texture 管理。
- 降低复杂地表混合在移动端造成的 overdraw 和采样成本。
- 用性能信息对照纹理管理结果,说明系统服务的是 production 规模。


