VkDeviceImageMemoryRequirements(3)

# VkDeviceImageMemoryRequirements(3) Manual Page

## Name

VkDeviceImageMemoryRequirements - (None)

Loading… please wait.

## C Specification

The `VkDeviceImageMemoryRequirements` structure is defined as:

    // Provided by VK_VERSION_1_3
    typedef struct VkDeviceImageMemoryRequirements {
        VkStructureType             sType;
        const void*                 pNext;
        const VkImageCreateInfo*    pCreateInfo;
        VkImageAspectFlagBits       planeAspect;
    } VkDeviceImageMemoryRequirements;

    // Provided by VK_KHR_maintenance4
    // Equivalent to VkDeviceImageMemoryRequirements
    typedef VkDeviceImageMemoryRequirements VkDeviceImageMemoryRequirementsKHR;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `pCreateInfo` is a pointer to a VkImageCreateInfo structure containing parameters affecting creation of the image to query.

- `planeAspect` is a VkImageAspectFlagBits value specifying the aspect corresponding to the image plane to query. This parameter is ignored unless `pCreateInfo->tiling` is VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, or `pCreateInfo->flags` has VK_IMAGE_CREATE_DISJOINT_BIT set.

## Description

Valid Usage

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-06416
  The `pCreateInfo->pNext` chain must not contain a VkImageSwapchainCreateInfoKHR structure

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-06776
  The `pCreateInfo->pNext` chain must not contain a VkImageDrmFormatModifierExplicitCreateInfoEXT structure

- VUID-VkDeviceImageMemoryRequirements-pNext-06996
  Applications also must not call vkGetDeviceImageMemoryRequirements with a VkImageCreateInfo whose `pNext` chain includes a VkExternalFormatANDROID structure with non-zero `externalFormat`

- VUID-VkDeviceImageMemoryRequirements-pNext-08962
  Applications also must not call vkGetDeviceImageMemoryRequirements with a VkImageCreateInfo whose `pNext` chain includes a VkExternalFormatQNX structure with non-zero `externalFormat`

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-06417
  If `pCreateInfo->format` specifies a multi-planar format and `pCreateInfo->flags` has VK_IMAGE_CREATE_DISJOINT_BIT set then `planeAspect` must not be VK_IMAGE_ASPECT_NONE_KHR

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-06419
  If `pCreateInfo->flags` has VK_IMAGE_CREATE_DISJOINT_BIT set and if the `pCreateInfo->tiling` is VK_IMAGE_TILING_LINEAR or VK_IMAGE_TILING_OPTIMAL, then `planeAspect` must be a single valid multi-planar aspect mask bit

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-06420
  If `pCreateInfo->tiling` is VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, then `planeAspect` must be a single valid memory plane for the image (that is, `aspectMask` must specify a plane index that is less than the VkDrmFormatModifierPropertiesEXT::`drmFormatModifierPlaneCount` associated with the image’s `format` and VkImageDrmFormatModifierPropertiesEXT::`drmFormatModifier`)

- VUID-VkDeviceImageMemoryRequirements-planeAspect-12399
  If `planeAspect` is not 0, `pCreateInfo->tiling` is not VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT, and `pCreateInfo->flags` does not have VK_IMAGE_CREATE_DISJOINT_BIT set, `planeAspect` must be a valid VkImageAspectFlagBits value

Valid Usage (Implicit)

- VUID-VkDeviceImageMemoryRequirements-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS

- VUID-VkDeviceImageMemoryRequirements-pNext-pNext
  `pNext` must be `NULL`

- VUID-VkDeviceImageMemoryRequirements-pCreateInfo-parameter
  `pCreateInfo` must be a valid pointer to a valid VkImageCreateInfo structure

## See Also

VK_KHR_maintenance4, VK_VERSION_1_3, VkImageAspectFlagBits, VkImageCreateInfo, VkStructureType, vkGetDeviceImageMemoryRequirements, vkGetDeviceImageMemoryRequirements, vkGetDeviceImageSparseMemoryRequirements, vkGetDeviceImageSparseMemoryRequirements

## Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0