Browse Source
Merge pull request #8735 from djrobx/add_vsync
Make vsync setting work for Vulkan
pull/15/merge
liamwhite
3 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
4 additions and
3 deletions
src/video_core/renderer_vulkan/vk_swapchain.cpp
src/yuzu/configuration/configure_graphics_advanced.ui
@ -33,9 +33,10 @@ VkSurfaceFormatKHR ChooseSwapSurfaceFormat(vk::Span<VkSurfaceFormatKHR> formats)
}
VkPresentModeKHR ChooseSwapPresentMode ( vk : : Span < VkPresentModeKHR > modes ) {
// Mailbox doesn't lock the application like fifo (vsync), prefer it
// Mailbox (triple buffering) doesn't lock the application like fifo (vsync),
// prefer it if vsync option is not selected
const auto found_mailbox = std : : find ( modes . begin ( ) , modes . end ( ) , VK_PRESENT_MODE_MAILBOX_KHR ) ;
if ( found_mailbox ! = modes . end ( ) ) {
if ( found_mailbox ! = modes . end ( ) & & ! Settings : : values . use_vsync . GetValue ( ) ) {
return VK_PRESENT_MODE_MAILBOX_KHR ;
}
if ( ! Settings : : values . use_speed_limit . GetValue ( ) ) {
@ -75,7 +75,7 @@
<string>VSync prevents the screen from tearing, but some graphics cards have lower performance with VSync enabled. Keep it enabled if you don't notice a performance difference.</string>
</property>
<property name="text">
<string>Use VSync (OpenGL only) </string>
<string>Use VSync</string>
</property>
</widget>
</item>