From a1c245200713ff09a5787f9581d77cd8aa7650be Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 11 Dec 2015 12:58:41 +0100 Subject: [PATCH] Check surface capabilities match what we expect --- renderdoc/driver/vulkan/vk_replay.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/renderdoc/driver/vulkan/vk_replay.cpp b/renderdoc/driver/vulkan/vk_replay.cpp index 8dbe608eb..4a1c2a7ec 100644 --- a/renderdoc/driver/vulkan/vk_replay.cpp +++ b/renderdoc/driver/vulkan/vk_replay.cpp @@ -239,6 +239,15 @@ void VulkanReplay::OutputWindow::Create(WrappedVulkan *driver, VkDevice device, VkResult vkr = VK_SUCCESS; + VkSurfaceCapabilitiesKHR capabilities; + + ObjDisp(inst)->GetPhysicalDeviceSurfaceCapabilitiesKHR(Unwrap(phys), surface, &capabilities); + + RDCASSERT(capabilities.supportedUsageFlags & VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT); + RDCASSERT(capabilities.supportedUsageFlags & VK_IMAGE_USAGE_TRANSFER_DST_BIT); + + RDCASSERT(capabilities.minImageCount <= 2 && 2 <= capabilities.maxImageCount); + // check format and present mode from driver { uint32_t numFormats = 0;