/ 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.