/ appendices / VK_KHR_get_surface_capabilities2.txt
VK_KHR_get_surface_capabilities2.txt
1 // Copyright (c) 2017-2019 Khronos Group. This work is licensed under a 2 // Creative Commons Attribution 4.0 International License; see 3 // http://creativecommons.org/licenses/by/4.0/ 4 5 include::meta/VK_KHR_get_surface_capabilities2.txt[] 6 7 *Last Modified Date*:: 8 2017-02-27 9 *IP Status*:: 10 No known IP claims. 11 *Contributors*:: 12 - Ian Elliott, Google 13 - James Jones, NVIDIA 14 - Alon Or-bach, Samsung 15 16 This extension provides new entry points to query device surface 17 capabilities in a way that can be easily extended by other extensions, 18 without introducing any further entry points. 19 This extension can be considered the `<<VK_KHR_surface>>` equivalent of the 20 `<<VK_KHR_get_physical_device_properties2>>` extension. 21 22 === New Object Types 23 24 None. 25 26 === New Enum Constants 27 28 * Extending elink:VkStructureType: 29 ** ename:VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR 30 ** ename:VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR 31 ** ename:VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR 32 33 === New Enums 34 35 None. 36 37 === New Structures 38 39 * slink:VkPhysicalDeviceSurfaceInfo2KHR 40 * slink:VkSurfaceCapabilities2KHR 41 * slink:VkSurfaceFormat2KHR 42 43 === New Functions 44 45 * flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR 46 * flink:vkGetPhysicalDeviceSurfaceFormats2KHR 47 48 === Issues 49 50 1) What should this extension be named? 51 52 *RESOLVED*: `VK_KHR_get_surface_capabilities2`. 53 Other alternatives: 54 55 * `VK_KHR_surface2` 56 * One extension, combining a separate display-specific query extension. 57 58 2) Should additional WSI query functions be extended? 59 60 *RESOLVED*: 61 62 * flink:vkGetPhysicalDeviceSurfaceCapabilitiesKHR: Yes. 63 The need for this motivated the extension. 64 * flink:vkGetPhysicalDeviceSurfaceSupportKHR: No. 65 Currently only has boolean output. 66 Extensions should instead extend 67 flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR. 68 * flink:vkGetPhysicalDeviceSurfaceFormatsKHR: Yes. 69 * flink:vkGetPhysicalDeviceSurfacePresentModesKHR: No. 70 Recent discussion concluded this introduced too much variability for 71 applications to deal with. 72 Extensions should instead extend 73 flink:vkGetPhysicalDeviceSurfaceCapabilities2KHR. 74 * flink:vkGetPhysicalDeviceXlibPresentationSupportKHR: Not in this 75 extension. 76 * flink:vkGetPhysicalDeviceXcbPresentationSupportKHR: Not in this 77 extension. 78 * flink:vkGetPhysicalDeviceWaylandPresentationSupportKHR: Not in this 79 extension. 80 * flink:vkGetPhysicalDeviceWin32PresentationSupportKHR: Not in this 81 extension. 82 83 === Version History 84 85 * Revision 1, 2017-02-27 (James Jones) 86 - Initial draft.