Vulkan-Docs/appendices/VK_KHR_swapchain_mutable_format.txt
Jon Leech c24b84795f Change log for November 25, 2018 Vulkan 1.1.94 spec update:
* Update release number to 94.

Public Issues:

  * Use the terms "`texel block`" and "`texel block size`" instead of "`data
    element`" and "`element size`", and define "`element`" as an array slot.
    In addition to the terminology changes, retitled the <<texel-block-size,
    Representation and Texel Block Size>> section and added texel block size
    / no. of texels/block information to the
    <<features-formats-compatibility, Compatible Formats>> table. There is
    some additional work underway to make sure the compatibility language
    makes sense for all of uncompressed, compressed, and multiplanar formats
    (public issue 763).
  * Cleanup `VK_NV_ray_tracing` language (public issues 858, 859).

Internal Issues:

  * Specify in <<shaders-invocationgroups, Invocation and Derivative
    Groups>> and <<textures-output-format-conversion, Texel Output Format
    Conversion>> that derivative groups are quads when code:SubgroupSize >=
    4 (internal issue 1390).
  * Make the type of slink:VkDescriptorUpdateTemplateCreateInfo::pNext
    `const` following pattern for the other stext:Vk*CreateInfo structures
    (internal issue 1459).
  * Specify that flink:vkCmdClearAttachments executes as a drawing command,
    rather than a transfer command (internal issue 1463).
  * Update `VK_NV_ray_tracing` to use code:InstanceId instead of
    code:InstanceIndex.

New Extensions:

  * `VK_KHR_swapchain_mutable_format`
  * `VK_EXT_fragment_density_map`
2018-11-25 23:27:30 -08:00

83 lines
2.1 KiB
Plaintext

// Copyright (c) 2014-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_swapchain_mutable_format.txt[]
*Last Modified Date*::
2018-03-28
*IP Status*::
No known IP claims.
*Contributors*::
- Jason Ekstrand, Intel
- Jan-Harald Fredriksen, ARM
- Jesse Hall, Google
- Daniel Rakos, AMD
- Ray Smith, ARM
=== Short Description
Allows processing of swapchain images as different formats to that used by
the window system, which is particularly useful for switching between sRGB
and linear RGB formats.
=== Description
This extension adds a new swapchain creation flag that enables creating
image views from presentable images with a different format than the one
used to create the swapchain.
=== New Object Types
None.
=== New Enum Constants
* Extending elink:VkSwapchainCreateFlagBitsKHR:
** ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR
=== New Enums
None.
=== New Structures
None.
=== New Functions
None.
=== Issues
1) Are there any new capabilities needed?
*RESOLVED*: No.
It is expected that all implementations exposing this extension support
swapchain image format mutability.
2) Do we need a separate etext:VK_SWAPCHAIN_CREATE_EXTENDED_USAGE_BIT_KHR?
*RESOLVED*: No.
This extension requires `VK_KHR_maintenance2` and presentable images of
swapchains created with ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR are
created internally in a way equivalent to specifying both
ename:VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT and
ename:VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR.
3) Do we need a separate structure to allow specifying an image format list
for swapchains?
*RESOLVED*: No.
We simply use the same slink:VkImageFormatListCreateInfoKHR structure
introduced by `VK_KHR_image_format_list`.
The structure is required to be included in the pname:pNext chain of
slink:VkSwapchainCreateInfoKHR for swapchains created with
ename:VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR.
=== Version History
* Revision 1, 2018-03-28 (Daniel Rakos)
- Internal revisions.