VKD3D-Proton 整合了对 Vulkan 描述符堆的支持

Valve 面向 Steam Play(Proton)的 VKD3D-Proton 组件(用于通过 Vulkan API 实现 Direct3D 12)现已支持描述符堆(VK_EXT_descriptor_heap),这标志着该组件取得了重大进展。

VK_EXT_descriptor_heap 扩展于今年 1 月随 Vulkan 1.4.340 版本一同推出。该扩展允许对描述符及其存储空间(描述符堆)进行显式管理。VK_EXT_descriptor_heap 解决了 VK_EXT_descriptor_buffer 暴露的问题,应能提供更强的可移植性保障和更可预测的性能特征。VK_EXT_descriptor_heap 不仅将对 Steam Play(VKD3D-Proton 应用)大有裨益,还能帮助解决不同 Vulkan 驱动程序(如 NVIDIA 驱动)在 Proton 游戏性能方面存在的问题。

自那时起,NVIDIA 开始提供描述符堆支持,RADV 也在 Mesa 26.1 中合并了描述符堆功能。本月早些时候,Intel ANV 驱动程序也实现了实验性的描述符堆支持。

早在四月,VKD3D-Proton 就提交了这个用于实现描述符堆支持的拉取请求。Hans-Kristian Arntzen 在其中解释道:

“这是一次规模庞大且可发布的重写。完整的 PR 已发布供测试,但实际合并将分五十万个阶段进行。

目前通过 VKD3D_CONFIG=descriptor_heap 隐藏该功能,因为在将其作为默认选项发布之前,还有几个 NVIDIA 的 bug 需要解决。

与之前的 PoC 相比,此 PR 并未移除旧版代码路径(呃……),但我们的设想是:一旦堆内存机制在所有场景下都稳定可靠,且我们可以逐步停止对老旧 GPU 的支持,这些旧路径最终将被移除。”

截至今日,该代码已合并,Arntzen 评论道:

VKD3D-Proton 整合了对 Vulkan 描述符堆的支持

下一次 Steam Play (Proton) 重大更新应该会非常令人兴奋。

本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/zixun/67033.html

(0)

相关推荐