Skip to content

现代 AAA 游戏使用的渲染技术简表

作者:Oleg Sidorkin,Cinevva CTO 兼联合创始人

现代 AAA 游戏中的合成场景,展示 PBR 材质、虚拟化几何体和光线追踪光照

如果拆开一款 2026 年 AAA 游戏的渲染管线,你会发现其中大部分内容都可以追溯到一小组各大工作室普遍采用的技术。不同引擎中的名称可能不同,但背后的理念相同。下面简要列出真正负责生成画面效果的技术,每项技术都配有示意图和几份深入的技术参考资料。我在 2026 年 9 月更新了本文,加入了 Unreal Engine 5.8 的变化、如今已能在浏览器中运行的技术,并在末尾新增了一组常见问题。

1. 基于物理的渲染(PBR)

材质由反照率、粗糙度、金属度、法线和环境光遮蔽纹理描述,并通过遵循能量守恒的着色器进行光照计算(Cook-Torrance 镜面反射、Lambert 或 Disney 漫反射)。这是所有现代 AAA 引擎默认采用的基础。如果一个表面在阳光、灯光和手电筒照射下都能保持一致的观感,这正是 PBR 的功劳。

使用 PBR 材质渲染的铁制头盔,周围悬浮着展示反照率、粗糙度、金属度和法线贴图的纹理样本

深入资料:

2. 延迟着色与可见性缓冲区着色

几何体首先将属性(法线、材质 ID、深度)写入 G-buffer 或可见性缓冲区。随后,光照以全屏通道运行,读取这些缓冲区并对每个像素着色一次。可见性缓冲区(Nanite 及类似技术所采用)更进一步:它只存储三角形 ID,稍后再逐像素解析材质参数,从而降低高密度几何体中重复绘制的成本。

延迟着色 G-buffer,分为最终颜色、世界空间法线、深度和材质 ID 面板

深入资料:

3. 虚拟化几何体(Nanite 风格)

网格会预先构建为簇层次结构。运行时,GPU 会流式加载并选择与每个像素分辨率相匹配的簇,因此无需手动制作 LOD 即可获得精确到亚像素级的细节。Unreal 的 Nanite 是其中最广为人知的例子,其他引擎如今也提供了各自的实现。实际效果是:无需制作 LOD,便可实时使用电影级资产。2026 年 6 月发布的 Unreal Engine 5.8 提升了 Nanite 在掌机平台上的光栅化与剔除性能,并为植被添加了逐像素可编程距离控制,详见 Tom Looman 的 5.8 性能说明。Epic 还表示,5.8 将是开发工作转向 Unreal Engine 6 之前的最后一个 5.x 版本。

左侧为平滑渲染结果,右侧以鲜艳色彩显示亚像素级 meshlet 簇

深入资料:

4. 用于阴影、反射和 AO 的实时光线追踪

硬件光线追踪(DXR、Vulkan RT)会针对每帧构建的 BVH,追踪阴影光线、镜面与光泽反射光线,以及环境光遮蔽光线。即使每个像素只有几条光线,也能超越屏幕空间技术,尤其是在处理屏幕外反射和接触阴影时。大多数游戏只会有针对性地使用它,而不是将其用于所有效果。

豪华展厅中的亮面红色跑车,呈现精确的光线追踪反射和接触阴影

深入资料:

5. 软件光线追踪(Lumen 风格)

并非每位玩家都拥有 RTX 显卡,因此引擎也会提供距离场或表面缓存回退方案。例如,Unreal 的 Lumen 会针对有符号距离场和表面缓存执行追踪,以低成本实现漫反射全局光照,并且只在必要时升级到硬件光线追踪。这正是 AAA 游戏能在主机上实现“光线追踪观感”的方式。根据 CG Channel 对 5.8 的概述,UE 5.8 新增了“Lumen Lite”模式,其速度约为 Lumen 高质量路径的两倍,目标是在 PlayStation 5 上达到 60 fps;同时还将随机多光源系统 MegaLights 提升为生产就绪状态。

大教堂内部,彩色玻璃产生颜色溢出效果,叠加的 SDF 线框揭示了近似几何体

深入资料:

6. ReSTIR 与蓄水池采样

面对包含数千个光源的直接和间接光照,ReSTIR(蓄水池时空重要性重采样)会跨像素和帧复用光照样本。正因如此,《赛博朋克 2077》等采用路径追踪的游戏才能在每个像素仅使用一两条光线时,将噪点保持在较低水平。随着路径追踪成为高端画质目标,预计会有更多引擎采用这项技术。

赛博朋克街道,湿润路面上呈现光线追踪反射,并可看到反弹光照路径

深入资料:

7. 体积云、雾与大气

天空通过 3D 噪声和密度体积进行光线步进。大气使用预计算的散射查找表(Bruneton 风格)来处理太阳和月亮之间的过渡。雾则采用 froxel 网格(可以将其理解为与视锥体对齐的 3D 纹理)来捕捉局部光照。它们共同带来了“系统化天气”,而不再只是一个天空盒。

日落时分的山谷,体积云与耶稣光穿透朦胧空气

深入资料:

8. 级联阴影贴图与虚拟阴影贴图

对于太阳阴影,级联阴影贴图会将视锥体划分为多个距离范围,并以适合各范围的分辨率进行渲染。虚拟阴影贴图则更进一步:它会将一张巨大的阴影贴图拆分为多个页面,只渲染摄像机可见的页面。AAA 游戏正是借此在不产生巨额显存开销的情况下,让玩家附近的阴影保持清晰。Epic 的 VSM 文档指出,每个光源的虚拟分辨率为 16k × 16k。根据 Tom Looman 的说明,UE 5.8 还新增了预滤波远距离路径,以低得多的分辨率将远处的阴影投射物绘制到裁剪贴图中,并增加了页面失效限流机制。

户外场景上叠加了三个不同颜色的级联视锥体,展示摄像机附近的阴影细节

深入资料:

9. 屏幕空间效果(SSAO、SSR、SSGI、SSSSS)

通过低成本读取深度和法线缓冲区,可以实现环境光遮蔽(SSAO)、反射(SSR)、单次反弹全局光照(SSGI),以及用于皮肤的次表面散射(SSSSS)。它们无法获取屏幕外的细节,这也是光线追踪逐渐取而代之的原因,但作为快速的基础方案,它们至今仍无处不在。

并排对比的厨房场景:左侧为平淡光照,右侧启用了 SSAO、SSR 和 SSGI 深入阅读: - Mittring,[探索次世代:CryENGINE 2](https://www.crytek.com/wp-content/uploads/Finding%20Next%20Gen%20-%20CryEngine%202.pdf)(SIGGRAPH 2007,最初提出 SSAO 的论文)。 - McGuire 等,[可扩展环境光遮蔽](https://research.nvidia.com/publication/scalable-ambient-obscurance)(HPG 2012,现代 SSAO)。 - Stachowiak 和 Uludag,[随机屏幕空间反射](https://www.ea.com/frostbite/news/stochastic-screen-space-reflections)(Frostbite,SSR 的参考资料)。 - Jimenez,[可分离次表面散射](https://www.iryoku.com/separable-sss/)(大多数 AAA 引擎用于皮肤渲染的技术)。 - Mara 等,[深度屏幕空间](https://research.activision.com/publications/2016/09/deep-g-buffers-for-stable-global-illumination-approximation)(Activision,SSGI 技术脉络之一)。

10. 时间抗锯齿与机器学习超分辨率(DLSS、FSR、XeSS)

画面先以较低的内部辨率渲染,再利用运动矢量、深度和历史帧进行重建。基于机器学习的超分辨率技术(DLSS 4、FSR 4、XeSS)还加入了帧生成,通过光流插值生成中间帧。AMD 的 FSR「Redstone」在 FSR 4 的基础上增加了机器学习帧生成、光线再生以及面向 RDNA 4 硬件的神经辐射缓存。这是超分辨率与降噪正在融合为同一个神经网络阶段的最明确信号。如今,大多数 AAA 游戏发布时都默认玩家会开启超分辨率功能,这改变了整个帧预算的分配方式。

同一角色的低分辨率输入与清晰的机器学习重建输出并排对比

深入阅读:

11. GPU 驱动渲染与网格着色器

剔除、LOD 选择和绘制提交全部在 GPU 上运行。网格着色器用更灵活、类似计算着色器的阶段取代顶点、几何和曲面细分流水线,并由其输出网格簇。结合多重间接绘制后,可以让 CPU 完全退出逐对象的性能热点循环。

外星太空港场景,叠加彩色网格簇以展示 GPU 驱动渲染

深入阅读:

12. 毛发、布料与皮肤渲染

毛发使用 Marschner 风格的各向异性着色和基于发丝的几何体(NVIDIA HairWorks、AMD TressFX 或引擎原生系统)。布料通过基于位置的动力学在 GPU 上模拟,并使用各向异性高光进行渲染。皮肤则使用屏幕空间次表面散射和预积分包裹光照。这三项通常最能显现 AAA 游戏与独立游戏之间的预算差距。

战士特写,展示基于发丝的毛发、布制斗篷和经过次表面散射处理的皮肤

深入阅读:

13. 贴花、虚拟纹理与材质分层

表面变化来自投射到深度缓冲区上的分层贴花(弹孔、泥土、血迹、污垢),以及按需即时流式传输高分辨率细节的虚拟纹理。材质分层使用遮罩和三平面投影,在每个像素上混合多套 PBR 材质,这就是让一块岩石看起来像五种不同岩石的办法。

风化的混凝土掩体墙,带有弹孔贴花、涂鸦和虚拟纹理页面图集插图

深入阅读:

14. 顺序无关透明

毛发、植被、粒子和玻璃很难被正确排序。AAA 引擎会使用加权混合 OIT、深度剥离或逐像素链表等技术,在不经过 CPU 排序步骤的情况下正确渲染它们。在植被茂密的场景中,这往往是不太引人注意、却又开销最高的帧阶段之一。

森林场景,包含相互重叠的半透明植被、烟雾、玻璃水滴和半透明毛发

深入阅读:

15. 神经辐射缓存与机器学习降噪器

这是最新加入的一层技术。NVIDIA 的神经辐射缓存会学习每个场景的间接光照,并通过查询缓存来代替追踪更多光线。机器学习降噪器(OptiX、Intel Open Image Denoise 和内部自研方案)可以在几毫秒内清理由稀疏光线追踪产生的噪声信号。预计这一类别将在未来两年迅速发展。

左侧是带噪声的每像素 1 样本光线追踪大教堂,右侧是经过机器学习降噪的清晰结果

深入阅读:

这对浏览器意味着什么

我们已经在 WebGPU 中实现了其中多项技术,并将它们用于我们的开放世界浏览器引擎。级联阴影贴图、GPU 驱动实例化、三平面 PBR、屏幕空间雾以及基于裁剪图的虚拟化地形,都能在浏览器标签页中以 120 FPS 运行。截至 2026 年 9 月,WebGPU 自 Chrome 和 Edge 113 版起默认启用;Safari 26 已在 macOS、iOS、iPadOS 和 visionOS 上默认启用;Firefox 则已在 Windows(141)和 Apple Silicon Mac(145 及更高版本)上启用,而 Linux 仍仅在 Nightly 版本中提供,详见 gpuweb 实现状态。Three.js 在 r185 中将 WebGPU 渲染器设为默认路径;Babylon.js 9(2026 年 3 月)则在其基础上增加了集群光照和基于计算着色器的体积效果,详见 Babylon.js 9.0 公告。其余技术(硬件光线追踪、网格着色器和机器学习超分辨率)尚未进入 WebGPU 规范,因此目前在 Web 上仍只能通过计算着色器模拟。若要进一步了解,请参阅我们的浏览器开放世界技术地貌生成游戏开发中的 WebGPU 与 WebGL 对比以及 2026 年 Web 游戏技术栈指南。如果想检查特定浏览器公开了哪些能力,我们的 WebGL/WebGPU 检测器可以报告适配器功能和限制。

常见问题

2026 年,哪些渲染技术可以通过 WebGPU 在浏览器中运行?

大多数不需要专用硬件单元的技术都可以。PBR、延迟着色和可见性缓冲区着色、级联阴影贴图、屏幕空间环境光遮蔽和反射、体积雾与云、TAA、通过计算着色器实现的 GPU 驱动剔除、顺序无关透明以及基于集群的几何体流式传输,如今都可以在 WebGPU 中运行;我们的浏览器引擎也使用了其中多项技术。目前缺少的是依赖规范未公开硬件阶段的功能:硬件光线追踪、网格着色器,以及 DLSS 和 FSR 等厂商专有的机器学习超分辨率技术。你可以在计算着色器中模拟光线追踪和 Nanite 风格的集群剔除,实际也有人这样做,但其与原生实现之间仍会存在很大的性能差距。我们的 WebGPU 与 WebGL 对比指南详细介绍了这对游戏性能预算意味着什么。

游戏中的接触阴影是什么?

接触阴影是物体实际接触表面的位置出现的短而清晰的阴影,例如踩在地面上的脚、桌面上的杯子,或者墙壁与地板交界处的缝隙。由于偏移和分辨率限制,常规阴影贴图往往会让这些阴影变得模糊或完全遗漏,因此引擎会添加一个专门的渲染阶段,通常是在深度缓冲区上进行短距离屏幕空间光线步进;而在光线追踪渲染器中,则会发射少量极短的阴影光线。它们的开销很低,却能防止物体看起来像漂浮在空中。在 Web 上,three.js 提供了一个接触阴影示例,通过将物体深度渲染到地面平面上来模拟接触阴影。这种方式适合产品展示,但用于完整场景时会比较棘手。

什么是虚拟阴影贴图?浏览器支持它吗?

虚拟阴影贴图会将一张超大的阴影贴图(根据 Epic 的文档,虚幻引擎为每盏灯使用 16k × 16k 的贴图)视为一组页面,并且只按各自所需的分辨率分配和渲染相机实际可见的页面。这样无需承担整张贴图的成本,就能在近距离获得几乎达到逐像素精度的阴影。截至 2026 年 9 月,没有任何浏览器引擎正式提供 VSM。Three.js 在其 WebGPU 渲染器中提供了级联阴影贴图PCSS 软阴影,Babylon.js 则提供了 CascadedShadowGenerator。从原理上说,可以在 WebGPU 上构建 VSM(它主要依赖计算和间接绘制),但目前尚无人推出通用实现,因此级联阴影仍是浏览器标签页中的实用选择。

Web 游戏最适合使用哪些毛发渲染技术?

跳过发丝模拟,把毛发卡片的着色做好。实时发丝毛发(TressFX、虚幻引擎的 Groom 系统)需要计算量巨大的模拟和可扩展的顺序无关透明渲染,即使在原生环境中负担也很重;截至 2026 年 9 月,three.js 或 Babylon.js 都没有现成实现。对 Web 友好的技术栈是毛发卡片(几十条带纹理并使用 Alpha 测试的条带),配合各向异性的 Kajiya-Kay 着色,或用 three.js 的 TSL 或 Babylon 的节点材质编写的简化 Marschner 高光;先进行 Alpha 测试、再进行混合的双通道渲染,以保持边缘柔和;再加入烘焙到卡片纹理中的低成本环境光遮蔽项。如果需要动态效果,就驱动少量骨骼链,而不是模拟发丝。这样只需极少的帧时间就能获得大部分视觉效果;当整个场景在集成显卡上的预算只有 16 毫秒时,这一点至关重要。

到 2026 年,这份列表仍然准确吗?

是的,而且自 2026 年 5 月以来的变化主要是改进,而非出现新的类别。UE 5.8(2026 年 6 月)让 MegaLights 达到可用于正式生产的状态,加入了 Lumen Lite 和成本更低的远距离虚拟阴影贴图,同时也是虚幻引擎 6 之前最后一个 5.x 版本。AMD 的 FSR Redstone 将帧生成、光线再生和神经辐射缓存整合进一个机器学习套件,这印证了最后两节所描述的发展方向。与此同时,WebGPU 已覆盖所有主流浏览器,因此上文“这对浏览器意味着什么”一节如今讨论的是应该移植哪些技术,而不是平台是否已经准备就绪。

整个技术栈的延伸阅读

如果只想读一本书,《实时渲染》第 4 版是涵盖上述大多数主题的标准参考书。若要持续关注研究进展,SIGGRAPH“游戏中的实时渲染进展”课程档案(advances.realtimerendering.com)提供了可免费获取的 PDF,其中收录了自 2006 年以来对 AAA 引擎的深入解析。若想了解具体游戏如何完成每一帧渲染的制作拆解,Adrian Courrèges 的 GPU 性能分析文章是必读内容。