Structures

VkImageSubresourceLayers

Structure specifying an image subresource layers

The VkImageSubresourceLayers structure is defined as:

typedef struct VkImageSubresourceLayers {
    VkImageAspectFlags aspectMask;
    uint32_t mipLevel;
    uint32_t baseArrayLayer;
    uint32_t layerCount;
} VkImageSubresourceLayers;
  • aspectMask is a combination of VkImageAspectFlagBits, selecting the color, depth and/or stencil aspects to be copied.
  • mipLevel is the mipmap level to copy
  • baseArrayLayer and layerCount are the starting layer and number of layers to copy.

Valid Usage

VUID-VkImageSubresourceLayers-aspectMask-00167

If aspectMask contains VK_IMAGE_ASPECT_COLOR_BIT, it must not contain either of VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT

VUID-VkImageSubresourceLayers-aspectMask-00168

aspectMask must not contain VK_IMAGE_ASPECT_METADATA_BIT

VUID-VkImageSubresourceLayers-aspectMask-02247

aspectMask must not include VK_IMAGE_ASPECT_MEMORY_PLANEiBIT_EXT for any index i

VUID-VkImageSubresourceLayers-layerCount-09243

If the maintenance5 feature is not enabled, layerCount must not be VK_REMAINING_ARRAY_LAYERS

VUID-VkImageSubresourceLayers-layerCount-01700

If layerCount is not VK_REMAINING_ARRAY_LAYERS, it must be greater than 0

Valid Usage (Implicit)