Default to triple buffering if presentWait is supported.

This commit is contained in:
Dario 2024-12-19 13:24:10 -03:00
parent 37227b8a83
commit 97122daf3b

View file

@ -1350,7 +1350,13 @@ void Video::CreateHostDevice()
switch (Config::TripleBuffering)
{
case ETripleBuffering::Auto:
bufferCount = g_vulkan ? 2 : 3; // Defaulting to 3 is fine on D3D12 thanks to flip discard model.
if (g_vulkan)
// Defaulting to 3 is fine if presentWait as supported, as the maximum frame latency allowed is only 1.
bufferCount = g_device->getCapabilities().presentWait ? 3 : 2;
else
// Defaulting to 3 is fine on D3D12 thanks to flip discard model.
bufferCount = 3;
break;
case ETripleBuffering::On:
bufferCount = 3;