Package org.lwjgl.vulkan
Class MESAImageAlignmentControl
java.lang.Object
org.lwjgl.vulkan.MESAImageAlignmentControl
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
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.
- Name String
VK_MESA_image_alignment_control- Extension Type
- Device extension
- Registered Extension Number
- 576
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_get_physical_device_properties2or Version 1.1- Special Use
- Contact
- Hans-Kristian Arntzen HansKristian-Work
Other Extension Metadata
- Last Modified Date
- 2024-05-03
- IP Status
- No known IP claims.
- Contributors
- Hans-Kristian Arntzen, Valve
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
-
Field Details
-
VK_MESA_IMAGE_ALIGNMENT_CONTROL_SPEC_VERSION
public static final int VK_MESA_IMAGE_ALIGNMENT_CONTROL_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_MESA_IMAGE_ALIGNMENT_CONTROL_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESAExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESAExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA
public static final int VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESAExtendsVkStructureType.Enum values:
- See Also:
-