VkImageResolve2(3)

# VkImageResolve2(3) Manual Page

## Name

VkImageResolve2 - Structure specifying an image resolve operation

## C Specification

The `VkImageResolve2` structure is defined as:

    // Provided by VK_VERSION_1_3
    typedef struct VkImageResolve2 {
        VkStructureType             sType;
        const void*                 pNext;
        VkImageSubresourceLayers    srcSubresource;
        VkOffset3D                  srcOffset;
        VkImageSubresourceLayers    dstSubresource;
        VkOffset3D                  dstOffset;
        VkExtent3D                  extent;
    } VkImageResolve2;

    // Provided by VK_KHR_copy_commands2
    // Equivalent to VkImageResolve2
    typedef VkImageResolve2 VkImageResolve2KHR;

## Members

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

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

- `srcSubresource` and `dstSubresource` are VkImageSubresourceLayers structures specifying the image subresources of the images used for the source and destination image data, respectively.

- `srcOffset` and `dstOffset` select the initial `x`, `y`, and `z` offsets in texels of the sub-regions of the source and destination image data.

- `extent` is the size in texels of the source image to resolve in `width`, `height` and `depth`.

## Description

Valid Usage

- VUID-VkImageResolve2-aspectMask-10993
  The `aspectMask` member of `srcSubresource` and `dstSubresource` must only contain VK_IMAGE_ASPECT_DEPTH_BIT, VK_IMAGE_ASPECT_STENCIL_BIT, or VK_IMAGE_ASPECT_COLOR_BIT

- VUID-VkImageResolve2-maintenance10-10994
  If `maintenance10` feature is not enabled, `srcSubresource` and `dstSubresource` must not contain VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT

- VUID-VkImageResolve2-layerCount-08803
  If neither of the `layerCount` members of `srcSubresource` or `dstSubresource` are VK_REMAINING_ARRAY_LAYERS, the `layerCount` member of `srcSubresource` and `dstSubresource` must match

- VUID-VkImageResolve2-layerCount-08804
  If one of the `layerCount` members of `srcSubresource` or `dstSubresource` is VK_REMAINING_ARRAY_LAYERS, the other member must be either VK_REMAINING_ARRAY_LAYERS or equal to the `arrayLayers` member of the VkImageCreateInfo used to create the image minus `baseArrayLayer`

Valid Usage (Implicit)

- VUID-VkImageResolve2-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2

- VUID-VkImageResolve2-pNext-pNext
  `pNext` must be `NULL`

- VUID-VkImageResolve2-srcSubresource-parameter
  `srcSubresource` must be a valid VkImageSubresourceLayers structure

- VUID-VkImageResolve2-dstSubresource-parameter
  `dstSubresource` must be a valid VkImageSubresourceLayers structure

## See Also

VK_KHR_copy_commands2, VK_VERSION_1_3, VkExtent3D, VkImageSubresourceLayers, VkOffset3D, VkResolveImageInfo2, VkStructureType

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