Epic Games已正式发布文档,详细说明了微软(Microsoft)DirectX 12高级着色器交付(ASD)功能与虚幻引擎5.8(Unreal Engine 5.8)的集成方案。这标志着在解决现代PC游戏最顽固的问题之一——管线状态对象(PSO)与着色器编译卡顿——方面迈出了重要一步。

根据Epic Games最新发布的文档,虚幻引擎5.8现已内置专用的ASD工具,允许开发者直接从经过烘焙的Windows Direct3D12游戏构建(即资源已针对目标平台完成转换与优化的版本)中生成状态对象数据库(SODB)。随后,该数据库可提交至支持此功能的游戏商店平台,由平台在游戏下载前针对特定GPU架构和驱动程序预编译着色器。
虚幻引擎5在游戏行业的采用率持续攀升,从独立小作到3A大作,越来越多的作品基于该引擎开发。正因如此,解决着色器编译卡顿等长期存在的技术问题,对PC游戏的未来愈发关键。
对于不熟悉这项技术的人来说,高级着色器交付的本质是将着色器编译从玩家的PC上转移出去,让支持该技术的游戏启动更快,并大幅降低游戏过程中遇到着色器编译卡顿的概率。
我们此前曾报道过微软为虚幻引擎5实施高级着色器交付的方案,该项目于2026年4月被发现在开发中。这项技术最初于2025年随ROG Xbox Ally掌机一同亮相,此后适用范围大幅扩展。微软最近确认,该技术已更广泛地支持搭载英伟达(NVIDIA)、AMD、英特尔(Intel)和高通(Qualcomm)GPU的Windows 11 PC。
这一进展对虚幻引擎5游戏尤为重要,因为这类游戏在PC上的着色器编译卡顿问题已有些声名狼藉。现代UE5作品可能包含数量庞大的着色器与PSO排列组合,这些组合源自不同的材质、渲染技术、画质设置以及其他渲染状态的搭配。
可能组合的数量之巨,使得开发者极难在游戏开始前发现、收集并预编译所有必需的PSO。因此,当玩家遇到新特效或新场景时,部分PSO不可避免地需要即时编译,即便硬件性能强劲,也可能出现明显的帧时间尖峰和卡顿。
Digital Foundry长期通过其#StutterStruggle活动呼吁关注PC游戏(尤其是虚幻引擎5作品)中持续存在的着色器编译与场景切换卡顿问题。该媒体多次敲响警钟,敦促Epic Games和开发者优先保障更平滑、更稳定的帧时间。
微软自己也承认了这一挑战,解释称某些游戏包含的PSO组合多到完全枚举和编译变得不切实际。其部分图形程序技术旨在进一步缓解该问题,允许将通用着色器组件编译一次后在多个图形管线中复用。
Epic的实现方案让UE5开发者的流程更加简便。新的ASD工具可以从烘焙着色器归档中收集所有计算着色器,以及从打包的管线缓存中收集图形与计算PSO,然后生成高级着色器交付所需的SODB。生成的数据随后可编译为硬件专用的预编译着色器数据库(PSDB),并通过支持的商店平台分发。
不过,该方案也存在一些重要限制。高级着色器交付并不能取代虚幻引擎5现有的PSO预缓存机制,Epic明确建议开发者继续启用这些机制。图形PSO仍须通过管线缓存收集,这意味着任何遗漏的排列组合可能仍需传统的运行时编译。此外,光线追踪PSO目前尚不支持,较旧的GPU驱动和不支持的硬件也可能无法从中获益。
尽管如此,这对PC游戏而言仍是一项潜在的重大进展。目前微软商店(Microsoft Store)和Xbox PC应用已支持高级着色器交付,微软也确认该技术将登陆Steam和Epic游戏商城(Epic Games Store),广泛采用的基础设施正逐步成型。Epic的文档明确指出,Epic游戏商城的支持目标定于2027年初。
希望随着该技术更深入地集成到虚幻引擎5中,并陆续获得微软商店、Steam、Epic游戏商城乃至其他PC游戏启动器的支持,着色器编译卡顿问题终能受到控制。鉴于该问题如此频繁地困扰虚幻引擎5作品,任何能大幅缓解它的技术,都将为PC玩家带来体验上的重大提升。



