// Copyright (c) 2017-2018 Khronos Group. This work is licensed under a // Creative Commons Attribution 4.0 International License; see // http://creativecommons.org/licenses/by/4.0/ include::meta/VK_KHR_get_surface_capabilities2.txt[] *Last Modified Date*:: 2017-02-27 *IP Status*:: No known IP claims. *Contributors*:: - Ian Elliott, Google - James Jones, NVIDIA - Alon Or-bach, Samsung This extension provides new entry points to query device surface capabilities in a way that can be easily extended by other extensions, without introducing any further entry points. This extension can be considered the `<>` equivalent of the `<>` extension. === New Object Types None. === New Enum Constants * Extending elink:VkStructureType: ** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR ** ename:VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR ** ename:VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR === New Enums None. === New Structures * slink:VkPhysicalDeviceSurfaceInfo2KHR * slink:VkSurfaceCapabilities2KHR * slink:VkSurfaceFormat2KHR === New Functions * flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR * flink:vkGetPhysicalDeviceSurfaceFormats2KHR === Issues 1) What should this extension be named? *RESOLVED*: `VK_KHR_get_surface_capabilities2`. Other alternatives: * `VK_KHR_surface2` * One extension, combining a separate display-specific query extension. 2) Should additional WSI query functions be extended? *RESOLVED*: * flink:vkGetPhysicalDeviceSurfaceCapabilitiesKHR: Yes. The need for this motivated the extension. * flink:vkGetPhysicalDeviceSurfaceSupportKHR: No. Currently only has boolean output. Extensions should instead extend flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR. * flink:vkGetPhysicalDeviceSurfaceFormatsKHR: Yes. * flink:vkGetPhysicalDeviceSurfacePresentModesKHR: No. Recent discussion concluded this introduced too much variability for applications to deal with. Extensions should instead extend flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR. * flink:vkGetPhysicalDeviceXlibPresentationSupportKHR: Not in this extension. * flink:vkGetPhysicalDeviceXcbPresentationSupportKHR: Not in this extension. * flink:vkGetPhysicalDeviceWaylandPresentationSupportKHR: Not in this extension. * flink:vkGetPhysicalDeviceMirPresentationSupportKHR: Not in this extension. * flink:vkGetPhysicalDeviceWin32PresentationSupportKHR: Not in this extension. === Version History * Revision 1, 2017-02-27 (James Jones) - Initial draft.