在 Vulkan 中启用垂直同步

Enabling VSync in Vulkan

如何在 Vulkan 中使用垂直同步?我在 Windows,但代码应该也适用于 Linux。是不是在vkAcquireNextImageKHR中插个栅栏实现的?

虽然您可能会意识到,通过使用栅栏,正确的方法是使用等待垂直空白的演示模式,如 VK_PRESENT_MODE_FIFO_KHR。

Intel 有一篇很棒的文章详细介绍了 Vulkan 的不同呈现模式over here

请注意,此模式可能并非在所有设备上都可用,并且即使您 select 相应的演示模式,某些驱动程序也可能会忽略垂直同步。因此,如果您使用其中一种模式并且没有获得垂直同步,您可能需要等待更新的驱动程序。

但如果它是在驱动程序内部实现的,那么这是在 Vulkan 支持的所有平台上进行垂直同步的正确方法。