From 9c26fad40ebf35c92d5b761eccec4684fd8a4305 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Tue, 3 Dec 2019 02:03:22 +0100 Subject: [PATCH] [vulkan] Add feature bit for exclusive fullscreen control --- src/d3d11/d3d11_swapchain.cpp | 1 + src/vulkan/vulkan_presenter.h | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/d3d11/d3d11_swapchain.cpp b/src/d3d11/d3d11_swapchain.cpp index 37bff463..71ae6174 100644 --- a/src/d3d11/d3d11_swapchain.cpp +++ b/src/d3d11/d3d11_swapchain.cpp @@ -412,6 +412,7 @@ namespace dxvk { presenterDevice.queueFamily = graphicsQueue.queueFamily; presenterDevice.queue = graphicsQueue.queueHandle; presenterDevice.adapter = m_device->adapter()->handle(); + presenterDevice.features.fullScreenExclusive = m_device->extensions().extFullScreenExclusive; vk::PresenterDesc presenterDesc; presenterDesc.imageExtent = { m_desc.Width, m_desc.Height }; diff --git a/src/vulkan/vulkan_presenter.h b/src/vulkan/vulkan_presenter.h index 7e2d2eab..f3b0d7b9 100644 --- a/src/vulkan/vulkan_presenter.h +++ b/src/vulkan/vulkan_presenter.h @@ -41,6 +41,13 @@ namespace dxvk::vk { VkExtent2D imageExtent; uint32_t imageCount; }; + + /** + * \brief Presenter features + */ + struct PresenterFeatures { + bool fullScreenExclusive : 1; + }; /** * \brief Adapter and queue @@ -49,6 +56,7 @@ namespace dxvk::vk { uint32_t queueFamily = 0; VkQueue queue = VK_NULL_HANDLE; VkPhysicalDevice adapter = VK_NULL_HANDLE; + PresenterFeatures features = { }; }; /**