/ appendices / VK_KHR_swapchain_mutable_format.txt
VK_KHR_swapchain_mutable_format.txt
1 // Copyright (c) 2014-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_swapchain_mutable_format.txt[] 6 7 *Last Modified Date*:: 8 2018-03-28 9 *IP Status*:: 10 No known IP claims. 11 *Contributors*:: 12 - Jason Ekstrand, Intel 13 - Jan-Harald Fredriksen, ARM 14 - Jesse Hall, Google 15 - Daniel Rakos, AMD 16 - Ray Smith, ARM 17 18 === Short Description 19 20 Allows processing of swapchain images as different formats to that used by 21 the window system, which is particularly useful for switching between sRGB 22 and linear RGB formats. 23 24 === Description 25 26 This extension adds a new swapchain creation flag that enables creating 27 image views from presentable images with a different format than the one 28 used to create the swapchain. 29 30 === New Object Types 31 32 None. 33 34 === New Enum Constants 35 36 * Extending elink:VkSwapchainCreateFlagBitsKHR: 37 ** ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR 38 39 === New Enums 40 41 None. 42 43 === New Structures 44 45 None. 46 47 === New Functions 48 49 None. 50 51 === Issues 52 53 1) Are there any new capabilities needed? 54 55 *RESOLVED*: No. 56 It is expected that all implementations exposing this extension support 57 swapchain image format mutability. 58 59 2) Do we need a separate etext:VK_SWAPCHAIN_CREATE_EXTENDED_USAGE_BIT_KHR? 60 61 *RESOLVED*: No. 62 This extension requires `VK_KHR_maintenance2` and presentable images of 63 swapchains created with ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR are 64 created internally in a way equivalent to specifying both 65 ename:VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT and 66 ename:VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR. 67 68 3) Do we need a separate structure to allow specifying an image format list 69 for swapchains? 70 71 *RESOLVED*: No. 72 We simply use the same slink:VkImageFormatListCreateInfoKHR structure 73 introduced by `VK_KHR_image_format_list`. 74 The structure is required to be included in the pname:pNext chain of 75 slink:VkSwapchainCreateInfoKHR for swapchains created with 76 ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR. 77 78 79 === Version History 80 81 * Revision 1, 2018-03-28 (Daniel Rakos) 82 - Internal revisions.