To resolve a multisample image to a non-multisample image, call:
void vkCmdResolveImage( VkCommandBuffer commandBuffer, VkImage srcImage, VkImageLayout srcImageLayout, VkImage dstImage, VkImageLayout dstImageLayout, uint32_t regionCount, const VkImageResolve* pRegions);
commandBuffer
is the command buffer into which the command will be
recorded.
srcImage
is the source image.
srcImageLayout
is the layout of the source image subresources for
the resolve.
dstImage
is the destination image.
dstImageLayout
is the layout of the destination image subresources
for the resolve.
regionCount
is the number of regions to resolve.
pRegions
is a pointer to an array of VkImageResolve
structures specifying the regions to resolve.
During the resolve the samples corresponding to each pixel location in the source are converted to a single sample before being written to the destination. If the source formats are floating-point or normalized types, the sample values for each pixel are resolved in an implementation-dependent manner. If the source formats are integer types, a single sample’s value is selected for each pixel.
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
.
Resolves are done layer by layer starting with baseArrayLayer
member
of srcSubresource
for the source and dstSubresource
for the
destination.
layerCount
layers are resolved to the destination image.
The VkImageResolve
structure is defined as:
typedef struct VkImageResolve { VkImageSubresourceLayers srcSubresource; VkOffset3D srcOffset; VkImageSubresourceLayers dstSubresource; VkOffset3D dstOffset; VkExtent3D extent; } VkImageResolve;
srcSubresource
and dstSubresource
are
VkImageSubresourceLayers
structures specifying the image
subresources of the images used for the source and destination image
data, respectively.
Resolve of depth/stencil images is not supported.
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
.