diff --git a/src/vulkan/vulkan_presenter.cpp b/src/vulkan/vulkan_presenter.cpp index 6958e576..7eb84b02 100644 --- a/src/vulkan/vulkan_presenter.cpp +++ b/src/vulkan/vulkan_presenter.cpp @@ -11,6 +11,14 @@ namespace dxvk::vk { PresenterDevice device, const PresenterDesc& desc) : m_vki(vki), m_vkd(vkd), m_device(device), m_window(window) { + // As of Wine 5.9, winevulkan provides this extension, but does + // not filter the pNext chain for VkSwapchainCreateInfoKHR properly + // before passing it to the Linux sude, which breaks RenderDoc. + if (::GetModuleHandle("winevulkan.dll")) { + Logger::warn("winevulkan detected, disabling exclusive fullscreen support"); + m_device.features.fullScreenExclusive = false; + } + if (createSurface() != VK_SUCCESS) throw DxvkError("Failed to create surface");