C Specification
To copy data from a memory region to an image object by specifying copy parameters in a buffer, call:
// Provided by VK_NV_copy_memory_indirect
void vkCmdCopyMemoryToImageIndirectNV(
VkCommandBuffer commandBuffer,
VkDeviceAddress copyBufferAddress,
uint32_t copyCount,
uint32_t stride,
VkImage dstImage,
VkImageLayout dstImageLayout,
const VkImageSubresourceLayers* pImageSubresources);
Parameters
-
commandBuffer
is the command buffer into which the command will be recorded. -
copyBufferAddress
is the buffer address specifying the copy parameters. This buffer is laid out in memory as an array of VkCopyMemoryToImageIndirectCommandNV structures. -
copyCount
is the number of copies to execute, and can be zero. -
stride
is the byte stride between successive sets of copy parameters. -
dstImage
is the destination image. -
dstImageLayout
is the layout of the destination image subresources for the copy. -
pImageSubresources
is a pointer to an array of sizecopyCount
of VkImageSubresourceLayers used to specify the specific image subresource of the destination image data for that copy.
Description
Each region in copyBufferAddress
is copied from the source memory
region to an image region in the destination image.
If the destination image is of type VK_IMAGE_TYPE_3D
, the starting
slice and number of slices to copy are specified in
pImageSubresources
::baseArrayLayer
and
pImageSubresources
::layerCount
respectively.
The copy must be performed on a queue that supports indirect copy
operations, see VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.
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.