上月,历经五年多的开发,Vulkan VK_EXT_present_timing 扩展终于合并。该扩展最终于 11 月底随 Vulkan 1.4.335 规范更新亮相,其功能令人振奋,因为它能够获取演示引擎的显示信息,从而实现精确的计时,并帮助用户安排演示时间,使其不早于预期时间。该功能对避免游戏卡顿等现象具有重大意义。目前 Mesa 对此的实现已接近完成,有望近期合并。
以 VKD3D-Proton 项目闻名、并为 Valve Linux 图形团队作出无数贡献的 Hans-Kristian Arntzen,正致力于为Mesa的Vulkan窗口系统集成(WSI)实现VK_EXT_present_timing支持。在上周提交的 Mesa Vulkan WSI 合并请求中,他特别说明初期重点在于确保 X.Org 支持的完善性:
“启动实现工作。首先专注于X11,因为几乎可以肯定没人做过这个:Xwl似乎无法可靠地实现。若有更好的方法,我很乐意听取建议。我研究过PRESENT_CAPABILITY_UST,但它似乎在Xorg和Xwl中都不被支持,至少在KDE环境下如此。”
过去一周,代码注释/审查和相关活动相当多,我们也在开发其他功能、Wayland 支持、KHR_display 以及改进 XWayland 支持。
截至昨天,Hans-Kristian Arntzen 认为 Mesa 的 VK_EXT_present_timing 支持已经完成:
我认为这个MR版本的功能已经全部完善了。期待大家的评价。
Eric Engestrom 在 Asahi 代码上进行了测试,结果非常成功,正确的镜像使用了 VK_EXT_present_timing:

该合并请求为通用的 Vulkan WSI 代码启用了 VK_EXT_present_timing 功能,并将其与 Radeon RADV、Qualcomm Adreno TURNIP、Intel ANV、苹果硬件的 HoneyKrisp(作为 Asahi 的一部分)以及开源的 NVIDIA NVK 驱动程序进行了集成。
鉴于该合并请求在过去一周的完善以及昨日功能的完成,希望 VK_EXT_present_timing 支持能够很快合并到 Mesa Git 中——这应该足以赶上第一季度 Mesa 26.0 的发布。
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/zixun/63642.html