UE console 速记

r.VT.Borders 10 设置VT可视化

April 21, 2026 · 1 min · MrOptimist

Nanite VisBuffer 核心概念速查

Nanite VisBuffer 核心概念速查 Nanite 是 UE5 的虚拟化几何系统,其核心创新是用 Visibility Buffer(可见性缓冲) 替代传统 G-Buffer,将几何处理与材质着色完全解耦。本文梳理 VisBuffer 管线中涉及的关键概念。 VisBuffer 整体管线 Mesh → Instance → Cluster Group → Cluster → Triangle → VisBuffer → Material Pass Culling Pass(计算着色器):GPU 端逐 Cluster 做视锥/遮挡/屏幕尺寸剔除 Rasterization Pass:将可见像素写入 VisBuffer(仅存 ID,不做材质计算) Material Pass:全屏 Pass 读取 VisBuffer,解码 ID,仅对可见像素着色一次 来源:Brian Karis, “A Deep Dive into Nanite Virtualized Geometry”, SIGGRAPH 2021 (Advances in Real-Time Rendering) 三角形(Triangle) Cluster 内的基本渲染单元。每个 Cluster 包含最多 128 个三角形。在 VisBuffer 中,三角形 ID 占约 7 bit(2^7 = 128),用于在 Material Pass 中定位该三角形的三个顶点并做重心坐标插值。 ...

April 20, 2026 · 4 min · MrOptimist

Nanite: A Deep Dive

Nanite: A Deep Dive 来源: Karis_Nanite_SIGGRAPH_Advances_2021_final — Brian Karis, Rune Stubbe, Graham Wihlidal 会议: SIGGRAPH 2021 Advances in Real-Time Rendering in Games course 作者主讲: Brian Karis (Engineering Fellow, Epic Games) 主题: UE5 全新虚拟几何系统 Nanite 的深度技术解析 目录 愿景与现实 可选方案的探索 GPU Driven Pipeline 三角形 Cluster Culling 与 Occlusion Culling Visibility Buffer 与可见性/材质解耦 次线性扩展与 Cluster 层次结构 LOD 裂缝问题与 DAG 构建 构建流程详解(Build Operations) 简化算法与误差度量 运行时视相关 LOD 选择 并行 LOD 选择与层次裁剪 Persistent Threads 与两 Pass Occlusion Culling 光栅化(软件 + 硬件混合) 小三角形与微多边形软光栅器 小实例(Tiny Instances)与 Imposter 延迟材质求值(Deferred Material Evaluation) 流水线性能数据 阴影:Virtual Shadow Maps Streaming(几何流送) 压缩:内存表示与磁盘表示 结果与未来工作 致谢与参考文献 1. 愿景与现实 1.1 The Dream(梦想) 像 Virtual Texturing 那样虚拟化几何: ...

April 20, 2026 · 16 min · MrOptimist

UE 纹理流送池与 Shader 调试 CVar 速查

纹理流送池 UE 根据流送池预算决定纹理加载哪些 mip level,超出预算时低优先级纹理只加载低分辨率 mip,控制台输出 Texture streaming pool over X MB 警告。 查询与调整 // 运行时查询当前值 r.Streaming.PoolSize // 运行时修改(单位 MiB) r.Streaming.PoolSize 3000 永久设置 在 DefaultEngine.ini 中: [/Script/Engine.RendererSettings] r.Streaming.PoolSize=3000 诊断命令 命令 用途 stat streaming 查看池使用量、各纹理流送状态 ListStreamingTextures 列出所有流送纹理及占用 r.Streaming.MaxTempMemoryAllowed 临时内存上限,过小也会导致流送卡顿 常见原因与对策 原因 对策 纹理分辨率过高 / mip 过多 降低 TextureGroup 的 MaxLOD 或分辨率 UDIM / 大量贴图同时可见 拆分 LOD、降低远处 mip 预算本身设太小 合理提高 PoolSize(需匹配目标显存) 纹理未设 Streaming 确认 Texture → Never Stream 未勾选 Shader 调试 CVar 在 RenderDoc 中查看 Compute Shader 源码,需在 ConsoleVariables.ini 的 [Startup] 段配置以下 CVar: ...

April 20, 2026 · 1 min · MrOptimist