C Specification

To query the memory layout of an image subresource, without an image object, call:

// Provided by VK_VERSION_1_4
void vkGetDeviceImageSubresourceLayout(
    VkDevice                                    device,
    const VkDeviceImageSubresourceInfo*         pInfo,
    VkSubresourceLayout2*                       pLayout);

or the equivalent command

// Provided by VK_KHR_maintenance5
void vkGetDeviceImageSubresourceLayoutKHR(
    VkDevice                                    device,
    const VkDeviceImageSubresourceInfo*         pInfo,
    VkSubresourceLayout2*                       pLayout);

Parameters

  • device is the logical device that owns the image.

  • pInfo is a pointer to a VkDeviceImageSubresourceInfo structure containing parameters required for the subresource layout query.

  • pLayout is a pointer to a VkSubresourceLayout2 structure in which the layout is returned.

Description

vkGetDeviceImageSubresourceLayout behaves similarly to vkGetImageSubresourceLayout2, but uses a VkImageCreateInfo structure to specify the image rather than a VkImage object.

Valid Usage (Implicit)
  • VUID-vkGetDeviceImageSubresourceLayout-device-parameter
    device must be a valid VkDevice handle

  • VUID-vkGetDeviceImageSubresourceLayout-pInfo-parameter
    pInfo must be a valid pointer to a valid VkDeviceImageSubresourceInfo structure

  • VUID-vkGetDeviceImageSubresourceLayout-pLayout-parameter
    pLayout must be a valid pointer to a VkSubresourceLayout2 structure

See Also

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 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0