Deprecation State
- 
Promoted to VK_KHR_swapchain_maintenance1 extension 
Contact
- 
Shahbaz Youssefi [GitHub]syoussefi 
Other Extension Metadata
- Last Modified Date
- 
2022-12-16 
- Interactions and External Dependencies
- 
- 
Promoted to VK_KHR_swapchain_maintenance1
 
- 
- Contributors
- 
- 
James Jones, NVIDIA 
- 
Jeff Juliano, NVIDIA 
- 
Shahbaz Youssefi, Google 
- 
Chris Forbes, Google 
- 
Ian Elliott, Google 
- 
Yiwei Zhang, Google 
- 
Charlie Lao, Google 
- 
Lina Versace, Google 
- 
Ralph Potter, Samsung 
- 
Igor Nazarov, Samsung 
- 
Hyunchang Kim, Samsung 
- 
Suenghwan Lee, Samsung 
- 
Munseong Kang, Samsung 
- 
Joonyong Park, Samsung 
- 
Hans-Kristian Arntzen, Valve 
- 
Lisa Wu, Arm 
- 
Daniel Stone, Collabora 
- 
Pan Gao, Huawei 
 
- 
Description
VK_EXT_swapchain_maintenance1 adds a collection of window system
integration features that were intentionally left out or overlooked in the
original VK_KHR_swapchain extension.
The new features are as follows:
- 
Specify a fence that will be signaled when the resources associated with a present operation can be safely destroyed. 
- 
Allow changing the present mode a swapchain is using at per-present granularity. 
- 
Allow applications to define the behavior when presenting a swapchain image to a surface with different dimensions than the image. Using this feature may allow implementations to avoid returning VK_ERROR_OUT_OF_DATE_KHRin this situation.
- 
Allow applications to defer swapchain memory allocation for improved startup time and memory footprint. 
- 
Allow applications to release previously acquired images without presenting them. 
Promotion to VK_KHR_swapchain_maintenance1
All functionality in this extension is included in
VK_KHR_swapchain_maintenance1, with the suffix changed to KHR.
The original type, enum and command names are still available as aliases of
the KHR functionality.
New Structures
- 
Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo: 
- 
Extending VkPresentInfoKHR: 
- 
Extending VkSwapchainCreateInfoKHR: 
New Enum Constants
- 
VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME
- 
VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION
- 
Extending VkStructureType: - 
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT
- 
VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT
- 
VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT
- 
VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT
- 
VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT
- 
VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT
 
- 
- 
Extending VkSwapchainCreateFlagBitsKHR: - 
VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT
 
- 
Version History
- 
Revision 0, 2019-05-28 (James Jones) - 
Initial revisions 
 
- 
- 
Revision 1, 2022-08-21 (Shahbaz Youssefi) - 
Add functionality and complete spec 
 
- 
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.