MAKE · WRITE · SHARE

UE4-RTGI

RTGI(Ray Traced Global Illumination,光线追踪全局光照)是 UE4 时代(4.25 引入)纯硬件光追 GI 方案:用 GPU 的光追核心沿光线方向求交,把间接漫反射”真的算出来”,再靠降噪收敛成稳定画面。

它是 UE4 的产物。到了 UE5,默认 GI 换成了 Lumen(软件优先、可选硬件模式),RTGI 不再是默认,但作为”全光追 / 画质上限”的选项依然在用——高端 PC 上它是有光追能力显卡的事实主流,主机上则是”高质量档 / Pro 机型”的标配

这篇讲四件事:RTGI 和 Lumen 什么关系、DXR 这个地基是什么、内部怎么工作、为什么它成了高端 PC 和主机高质量档的主流。它在 Base-渲染方案演进总览 里属于 GI 时间线 D 线(实时 GI)的终点之一。

1. RTGI 是什么、和 Lumen 什么关系

Unreal 的 GI 方法有四个可选(后处理体积 > Global Illumination > Method):None / Lumen / Screen Space / Ray Traced。其中 Ray Traced 就是 RTGI。

关键区分:

RTGI(Ray Traced) Lumen
追踪方式 纯硬件光追(DXR / Vulkan RT) 软件(SDF + 屏幕追踪 + Surface Cache),可选硬件模式
依赖 必须 RT 硬件 默认不依赖,硬件 RT 可选
定位 高质量、高开销 默认 GI,性价比路线
管线 独立的光追 GI 管线 独立的分层追踪管线

一个容易混的点:“硬件 Lumen” ≠ RTGI。Lumen 有 Software / Hardware 两种模式,Hardware Lumen 也用光追核心,但那是 Lumen 管线自己的追踪(Surface Cache + Mesh SDF + 屏幕),不是 RTGI 特性。RTGI 是独立的那条光追 GI 管线,UE4.25 引入,UE5 里继续存在,虽然不再是默认,但被追求”全光追”画质的项目广泛使用。

2. DXR 是地基:硬件 → API → 技术

先说清一个常被混的层级——DXR 和 RTGI 不是一个层面的东西,别并列比

1
2
3
4
5
6
7
硬件层    RTX / RDNA2 的光追核心(RT Core)—— 真正的求交算力

API 层 DXR(DX12)/ Vulkan RT / Metal RT —— 引擎跟硬件之间的接口

技术层 RTGI、RT反射、RT阴影、RT AO、Path Tracing —— 基于 API 做出的效果

应用层 UE 的 RTGI / Unity HDRP 光追 / 个人 DXR demo
  • DXR(DirectX Raytracing)是微软给 D3D12 加的一整套光追 API:加速结构(BLAS / TLAS)、Shader Table、DispatchRays、RayGen / Hit / Miss 三种 shader。它只负责”让 GPU 能算光线求交”,不管算出来的是 GI 还是反射
  • RTGI 是跑在 DXR 之上的具体技术。Vulkan RT 是另一条对等 API;主机上 Xbox 走 DXR(DX12 系),PS5 走索尼自己的 RT 接口,UE 都有对应实现。
  • RTGI、RT 反射、RT 阴影全是 DXR 的”应用层租户”。Unity HDRP 的光追 GI、GitHub 上那些”Unity 玩 DXR”的个人 demo,调的也是同一个 API,只是没被封装成 UE 这种完整方案。

一句话:DXR 是地基,RTGI 是地基上的一栋楼。 判断任何光追效果,先问它用的是哪一层。

3. 内部原理

3.1 两种模式:Brute Force vs Final Gather

模式 行为 质量 / 开销
Brute Force 每个像素对间接光做完整路径追踪(多 bounce),直接算出辐照度 更准、更慢
Final Gather 在一次采集 pass 里做间接光收集(final gather),少追踪几级 更快、略近似

动态光照质量要求高用 Brute Force;静态为主的场景用 Final Gather 能省不少开销。

3.2 关键参数

  • Max Bounces:光线最大反弹次数。默认 1 就已经有不错的间接光;2+ 更真实但贵。
  • Samples Per Pixel(SPP):每像素采样数,默认 1。每加 1 都线性涨成本,所以实时跑时基本都是 1 SPP,质量全靠后面的降噪补。

3.3 管线:1 SPP 光追 + 重建

实时预算下 RTGI 的流程大致是:

1
2
3
4
5
低分辨率 G-Buffer(深度/法线/世界坐标)
→ 光线生成(每像素 1 条主光 + 按 Max Bounces 的次级光)
→ 硬件求交(BVH 加速结构,DXR / Vulkan RT)
→ 命中点的辐照度
→ 降噪(时域累积 + 空间滤波)→ 干净的间接漫反射

关键点:1 SPP 的蒙特卡洛结果是极噪的,RTGI 能实时完全靠重建(降噪)撑着——这是它和 Lumen 走”数据结构预计算”(Surface Cache)最大的思路差异。

3.4 降噪:RTGI 真正的功臣

  • 时域累积:用运动矢量把上一帧结果重投影回当前帧,累积叠加(类似 TAA 的思路)。这是把 1 SPP 变成”等效几十 SPP”的核心。
  • 历史校验:重投影后要判断历史是否可信——被遮挡、新出现的像素要丢弃历史,否则残影 / 延迟。
  • 空间滤波:边缘感知(深度、法线、亮度做 edge-stopping)+ 方差引导的滤波(SVGF 那套),防止跨物体边缘漏色、抹掉接触阴影。
  • 默认降噪器:UE 默认加载 Intel Open Image Denoiser(OIDN) 插件;进阶可用 ReSTIR(时空重采样)压低方差。

时域累积的代价是收敛慢:光照突变、物体突然出现时,画面需要几帧到十几帧”burn-in”才能稳定,快速切换场景会有残影。1 SPP 下接触阴影也常被滤波抹掉。

3.5 光追家族

RTGI 不是孤立的,它和 UE 的其他光追特性共享同一套 RT 基础设施:

特性 一句话
RT 反射 精确反射屏幕外物体,Max Roughness 后回退到光栅
RT 阴影 精确软硬阴影、透明物色影
RTGI 本文主角,间接漫反射
RTAO 精确环境光遮蔽
RT 半透明 透明物体的反射 / 折射
Path Tracer 离线参考渲染,非实时

高端 PC 的”全光追”档通常就是 RTGI + RT 反射 + RT 阴影 + RTAO 一起开。

4. 为什么在高端 PC 和主机成为主流

4.1 高端 PC:RTGI 已是标配

RTX / RX 的光追核心从 2018/2020 年算起攒了六七年算力,加上降噪算法成熟(OIDN、SVGF、ReSTIR),高端 PC 上”全光追”已经从演示噱头变成质量档的标准配置——开 RTGI 不再是尝鲜,而是”画质上限”的默认选项。

4.2 主机:分两档在走

按 Digital Foundry 等对次世代 UE5 游戏的实测,主机的真实格局是:

档位 情况
基础版 PS5 / Xbox Series X 绝大多数游戏用软件 Lumen——硬件光追在 60fps 下成本扛不住,要靠 DRS(864p–1440p)+ TSR 到 4K 才能稳
PS5 Pro / 高质量模式 硬件光追(硬件 Lumen 或 RTGI 式)成为 30fps 质量档的配置,反射和 GI 明显更稳
演示级 Matrix Awakens 曾在基础 PS5 上演示硬件 Lumen 的效果上限

值得注意的趋势:UE5.5+ 对硬件光追做了大量性能优化,原本 CPU/GPU 都吃紧的项目现在能在主机上开 60Hz 的硬件 Lumen——这也是”RTGI 式硬件光追往主机走”的底层推力。

4.3 为什么是 RTGI 而不是 Lumen 全包

  • Lumen 是”够好 + 便宜”的默认;RTGI 是”更准 + 更贵”的上限。
  • 追求画质上限的项目(尤其配合大量镜面反射、通透场景)选 RTGI;追求覆盖面、60fps 的项目选 Lumen。
  • 二者不是替代,是按目标帧率 × 硬件档次选。

5. RTGI vs Lumen:一次讲透

维度 RTGI Lumen
追踪 硬件光追(BVH 求交) 软件:屏幕 + SDF + Surface Cache;可选硬件模式
数据依赖 无预计算结构,纯逐帧求交 Surface Cache(Mesh 卡片缓存)+ 时域累积
成本 高(1 SPP 也贵,全分辨率更贵) 中低,UE5 默认
质量 高,接近路径追踪 好但依赖缓存,动态下可能有漏光/糊
动态场景 好(每帧重新求交) 好(缓存会更新,但反射细节略逊)
硬件要求 必须 RT 核心 软件模式无需 RT;硬件模式需要
生态位 高端 PC / 主机质量档 全平台默认

一句话:Lumen 是”每个人都能开”的 GI,RTGI 是”高档硬件上逼近参考”的 GI。

6. 使用与调优(常见坑)

  1. 1 SPP 噪声 + 残影:这是 RTGI 的常态。配合 TAA/TSR 一起用,别指望 RTGI 自己消噪;光照突变场景注意 burn-in 延迟。
  2. Max Bounces 不是越高越好:默认 1 够用,2 看性能余量;动态场景 bounce 高收益递减。
  3. 降噪器别漏配:确认加载了 OIDN 或等效降噪插件,否则 1 SPP 就是糊成一团。
  4. 半分辨率是性价比点:GI 光线在 1/2 分辨率跑,配合空间滤波,画质损失小、成本省一半。
  5. 和 Lumen 混用要清楚:全场景 RTGI + Lumen 反射之类的混合是可行的,但要理解两套数据各管什么,别在同一用途上双重开。
  6. 主机上先看帧率预算:RTGI 是”帧率换画质”的典型,主机上要么质量档 30fps,要么 Pro 机型,别指望 60fps 性能档全开。

7. 总结

RTGI 的知识链:

1
2
3
4
5
硬件光追(DXR / Vulkan RT,BVH 求交)
→ 1 SPP 光线生成(Brute Force / Final Gather,Max Bounces 控制深度)
→ 低分辨率降采样
→ 降噪(时域累积 + 空间滤波,默认 OIDN,进阶 ReSTIR)
→ 稳定的间接漫反射

它成为高端主流的原因就一条:硬件算力 + 降噪算法双双成熟后,”真的算出来”的 GI 在高端硬件上变成了可接受的成本。而它在主机上扩散的速度,取决于 UE5.5+ 的 HWRT 优化和 Pro 机型能释放多少算力——这条线还会继续往低端渗透。


参考资料