// Copyright (c) 2016-2020 Intel Corporation
//
// SPDX-License-Identifier: Apache-2.0

include::{generated}/meta/{refprefix}VK_KHR_image_format_list.txt[]

=== Other Extension Metadata

*Last Modified Date*::
    2017-03-20
*Interactions and External Dependencies*::
  - Promoted to Vulkan 1.2 Core
*IP Status*::
    No known IP claims.
*Contributors*::
  - Jason Ekstrand, Intel
  - Jan-Harald Fredriksen, ARM
  - Jeff Bolz, NVIDIA
  - Jeff Leger, Qualcomm
  - Neil Henning, Codeplay

=== Description

On some implementations, setting the
ename:VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT on image creation can cause access
to that image to perform worse than an equivalent image created without
ename:VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT because the implementation does not
know what view formats will be paired with the image.

This extension allows an application to provide the list of all formats that
can: be used with an image when it is created.
The implementation may then be able to create a more efficient image that
supports the subset of formats required by the application without having to
support all formats in the format compatibility class of the image format.

=== Promotion to Vulkan 1.2

All functionality in this extension is included in core Vulkan 1.2, with the
KHR suffix omitted.
The original type, enum and command names are still available as aliases of
the core functionality.

include::{generated}/interfaces/VK_KHR_image_format_list.txt[]

=== Version History

  * Revision 1, 2017-03-20 (Jason Ekstrand)
    - Initial revision
