VK_GOOGLE_display_timing May Be A Big Help For Vulkan Games
In going through the GDC 2018 videos and slides now available, one of the most interesting sessions is Alen Ladavac of Croteam talking about frame stuttering and in particular how his company is working to overcome it thanks in part to Vulkan's VK_GOOGLE_display_timing extension.
Croteam has been experimenting with Vulkan's VK_GOOGLE_display_timing extension in Talos Principle and Serious Sam Fusion for being able to obtain accurate timing information and to be able to schedule future frames appropriately. VK_GOOGLE_display_timing has been around since Vulkan 1.0.43 and allows for obtaining information on the presentation engine's display with timing information, etc.
Even with lower frame-rates, if presenting smoother frames like via Vulkan's VK_GOOGLE_display_timing, the experience may be better than higher frame-rates but with possible stuttering. With Croteam's games making use of VK_GOOGLE_display_timing for making more informed rendering decisions, they have found a better experience with less micro-stuttering.
Unfortunately the adoption of VK_GOOGLE_display_timing is limited so far with some Android devices and then the RADV Mesa driver. For those that forgot, the timing extension was recently worked on by Keith Packard under contract for Valve. Croteam would like to see all Vulkan drivers implement VK_GOOGLE_display_timing "ASAP!"
Those wanting to dig in deeper can find the slide deck while a better video recording of the session is said to be made available soon.
Croteam has been experimenting with Vulkan's VK_GOOGLE_display_timing extension in Talos Principle and Serious Sam Fusion for being able to obtain accurate timing information and to be able to schedule future frames appropriately. VK_GOOGLE_display_timing has been around since Vulkan 1.0.43 and allows for obtaining information on the presentation engine's display with timing information, etc.
Even with lower frame-rates, if presenting smoother frames like via Vulkan's VK_GOOGLE_display_timing, the experience may be better than higher frame-rates but with possible stuttering. With Croteam's games making use of VK_GOOGLE_display_timing for making more informed rendering decisions, they have found a better experience with less micro-stuttering.
Unfortunately the adoption of VK_GOOGLE_display_timing is limited so far with some Android devices and then the RADV Mesa driver. For those that forgot, the timing extension was recently worked on by Keith Packard under contract for Valve. Croteam would like to see all Vulkan drivers implement VK_GOOGLE_display_timing "ASAP!"
Those wanting to dig in deeper can find the slide deck while a better video recording of the session is said to be made available soon.
2 Comments