Vulkan 1.3.293 于周五发布,作为此行业标准图形和计算 API 的最新规范。除了一些修复/说明外,Vulkan 1.3.293 还引入了一个新的 NVIDIA 供应商扩展。
Vulkan 1.3.293 规范更新的新功能是 NVIDIA 的 VK_NV_command_buffer_inheritance扩展。这个新的扩展允许游戏引擎和应用程序在执行队列中的命令缓冲区之间重用图形和计算状态。NVIDIA 的皮尔斯·丹尼尔 (Piers Daniell) 与任天堂的丹尼尔·故事 (Daniel Story) 合作开发了此扩展。VK_NV_command_buffer_inheritance扩展解释为:
“此扩展允许应用程序利用图形和计算状态,该状态在执行提交的命令缓冲区之间的队列中保持有效。这适用于主要命令缓冲区和辅助命令缓冲区。
继承的状态包括以前绑定的管道状态、以前绑定的着色器对象、以前绑定的顶点和索引缓冲区、以前绑定的描述符集和推送常量,以及所有以前设置的动态状态。
此扩展放宽了在开始命令缓冲区之后以及下一次绘制或调度之前需要绑定和设置所有状态的要求。
由于不必设置已继承的状态,应用程序可以通过不必冗余设置状态来节省 CPU 和 GPU 周期,并且在重用辅助命令缓冲区时也提高了灵活性。
一个有趣的补充,我们将看看这个命令缓冲区继承扩展是否会引起其他供应商及其 Vulkan 驱动程序的兴趣。
有关此例程 Vulkan API 规范更新的更多详细信息以及通过此 Vulkan 文档提交的所有VK_NV_command_buffer_inheritance文档。
转自 Vulkan 1.3.293 Released With NVIDIA Command Buffer Inheritance Extension – Phoronix