| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_KHR_swapchain_mutable_format
Description
Name
VK_KHR_swapchain_mutable_format - device extension
VK_KHR_swapchain_mutable_format
- Name String
VK_KHR_swapchain_mutable_format
- Extension Type
- Device extension
- Registered Extension Number
- 201
- Revision
- 1
- Ratification Status
- Ratified
- Extension and Version Dependencies
- VK_KHR_swapchain and
- Contact
Other Extension Metadata
- Last Modified Date
- 2018-03-28
- IP Status
- No known IP claims.
- Contributors
- Faith Ekstrand, Intel
- Jan-Harald Fredriksen, ARM
- Jesse Hall, Google
- Daniel Rakos, AMD
- Ray Smith, ARM
Description
This extension 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.
It 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 Enum Constants
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 VK_SWAPCHAIN_CREATE_EXTENDED_USAGE_BIT_KHR?
RESOLVED: No. This extension requires VK_KHR_maintenance2 and
presentable images of swapchains created with
SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR
are created internally in a way equivalent to specifying both
IMAGE_CREATE_MUTABLE_FORMAT_BIT
and
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
ImageFormatListCreateInfoKHR
structure introduced by VK_KHR_image_format_list. The structure is
required to be included in the pNext chain of
SwapchainCreateInfoKHR for
swapchains created with
SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR.
Version History
Revision 1, 2018-03-28 (Daniel Rakos)
- Internal revisions.
See Also
No cross-references are available
Document Notes
For more information, see the Vulkan Specification.
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- type KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION = 1
- pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION :: Integral a => a
- type KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME = "VK_KHR_swapchain_mutable_format"
- pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME :: (Eq a, IsString a) => a
- newtype SwapchainCreateFlagBitsKHR where
- SwapchainCreateFlagBitsKHR Flags
- pattern SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_KHR :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_PRESENT_ID_2_BIT_KHR :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_PRESENT_TIMING_BIT_EXT :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_PRESENT_WAIT_2_BIT_KHR :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: SwapchainCreateFlagBitsKHR
- pattern SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SwapchainCreateFlagBitsKHR
- type SwapchainCreateFlagsKHR = SwapchainCreateFlagBitsKHR
Documentation
pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION :: Integral a => a Source #
type KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME = "VK_KHR_swapchain_mutable_format" Source #
pattern KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
newtype SwapchainCreateFlagBitsKHR Source #
VkSwapchainCreateFlagBitsKHR - Bitmask controlling swapchain creation
Description
SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHRspecifies that images created from the swapchain (i.e. with theswapchainmember ofImageSwapchainCreateInfoKHRset to this swapchain’s handle) must useIMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT.
SWAPCHAIN_CREATE_PROTECTED_BIT_KHRspecifies that images created from the swapchain are protected images.SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHRspecifies that the images of the swapchain can be used to create aImageViewwith a different format than what the swapchain was created with. The list of allowed image view formats is specified by adding aImageFormatListCreateInfostructure to thepNextchain ofSwapchainCreateInfoKHR. In addition, this flag also specifies that the swapchain can be created with usage flags that are not supported for the format the swapchain is created with but are supported for at least one of the allowed image view formats.SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_KHRspecifies that the implementation may defer allocation of memory associated with each swapchain image until its index is to be returned fromacquireNextImageKHRoracquireNextImage2KHRfor the first time.SWAPCHAIN_CREATE_PRESENT_ID_2_BIT_KHRspecifies that applications can include thePresentId2KHRstructure in thepNextchain of thePresentInfoKHRstructure to associate an identifier with each presentation request.SWAPCHAIN_CREATE_PRESENT_WAIT_2_BIT_KHRspecifies that applications can usewaitForPresent2KHRto wait for the presentation engine to have begun presentation of the presentation request associated withPresentWait2InfoKHR::presentIdonswapchain.SWAPCHAIN_CREATE_PRESENT_TIMING_BIT_EXTspecifies that features supported by the swapchain device inPhysicalDevicePresentTimingFeaturesEXTcan be used to collect timing information or schedule presentation requests at specific times.
See Also
Constructors
| SwapchainCreateFlagBitsKHR Flags |
Bundled Patterns