Contact
-
Hans-Kristian Arntzen [GitHub]HansKristian-Work
Other Extension Metadata
- Last Modified Date
-
2024-05-03
- IP Status
-
No known IP claims.
- Contributors
-
-
Hans-Kristian Arntzen, Valve
-
Description
This extension allows applications to request a narrower alignment for
images than an implementation would otherwise require.
Some implementations internally support multiple image layouts in
VK_IMAGE_TILING_OPTIMAL
, each with different alignment requirements
and performance trade-offs.
In some API layering use cases such as D3D12, it is beneficial to be able to
control the alignment, since certain alignments for placed resources are
guaranteed to be supported, and emulating that expectation requires
unnecessary padding of allocations.
VkImageAlignmentControlCreateInfoMESA can be chained to VkImageCreateInfo, requesting that the alignment is no more than the provided alignment. If the requested alignment is not supported for a given VkImageCreateInfo, a larger alignment may be returned.
While something similar could be achieved with
VK_EXT_image_drm_format_modifier
in theory, this is not the
intended way to use that extension.
Format modifiers are generally used for externally shareable images, and
would not be platform portable.
It is also a cumbersome API to use just to lower the alignment.
New Enum Constants
-
VK_MESA_IMAGE_ALIGNMENT_CONTROL_EXTENSION_NAME
-
VK_MESA_IMAGE_ALIGNMENT_CONTROL_SPEC_VERSION
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA
-
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.