VK_KHR_swapchain_maintenance1
Other Extension Metadata
Last Modified Date
2025-03-31
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
This extension is based off the VK_EXT_swapchain_maintenance1 extension.
VK_KHR_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.
New Commands
New Structures
- VkReleaseSwapchainImagesInfoKHR
- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:
- Extending VkPresentInfoKHR:
- Extending VkSwapchainCreateInfoKHR:
New Enum Constants
VK_KHR_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAMEVK_KHR_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION- Extending VkStructureType:
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_KHRVK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_KHRVK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_KHRVK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_KHRVK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_KHRVK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_KHR
- Extending VkSwapchainCreateFlagBitsKHR:
VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_KHR
Version History
- Revision 1, 2025-03-31 (Shahbaz Youssefi)
- Based on VK_EXT_swapchain_maintenance1