VK_MESA_image_alignment_control(3)

# VK_MESA_image_alignment_control(3) Manual Page

## Name

VK_MESA_image_alignment_control - device extension

## Registered Extension Number

576

## Revision

1

## Ratification Status

Not ratified

## Extension and Version Dependencies

VK_KHR_get_physical_device_properties2
or
Vulkan Version 1.1

## Special Use

- D3D support

## 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 Structures

- Extending VkImageCreateInfo:

  - VkImageAlignmentControlCreateInfoMESA

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceImageAlignmentControlFeaturesMESA

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDeviceImageAlignmentControlPropertiesMESA

## 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

## Version History

- Revision 1, 2024-04-05 (Hans-Kristian Arntzen)

  - Initial specification

## 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.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0