Structures

VkCopyMemoryToImageIndirectCommandNV

Structure specifying indirect buffer image copy operation

The VkCopyMemoryToImageIndirectCommandNV is defined as:

typedef struct VkCopyMemoryToImageIndirectCommandNV {
    VkDeviceAddress srcAddress;
    uint32_t bufferRowLength;
    uint32_t bufferImageHeight;
    VkImageSubresourceLayers imageSubresource;
    VkOffset3D imageOffset;
    VkExtent3D imageExtent;
} VkCopyMemoryToImageIndirectCommandNV;
  • srcAddress is the starting address of the source device memory to copy from.
  • bufferRowLength and bufferImageHeight specify in texels a subregion of a larger two- or three-dimensional image in buffer memory, and control the addressing calculations. If either of these values is zero, that aspect of the buffer memory is considered to be tightly packed according to the imageExtent.
  • imageSubresource is a VkImageSubresourceLayers used to specify the specific image subresources of the image used for the destination image data, which must match the values specified in pImageSubresources parameter of vkCmdCopyMemoryToImageIndirectNV during command recording.
  • imageOffset selects the initial x, y, z offsets in texels of the sub-region of the destination image data.
  • imageExtent is the size in texels of the destination image in width, height and depth.

Valid Usage

VUID-VkCopyMemoryToImageIndirectCommandNV-bufferRowLength-07679

bufferRowLength must be 0, or greater than or equal to the width member of imageExtent

VUID-VkCopyMemoryToImageIndirectCommandNV-bufferImageHeight-07680

bufferImageHeight must be 0, or greater than or equal to the height member of imageExtent

VUID-VkCopyMemoryToImageIndirectCommandNV-imageOffset-07681

imageOffset must specify a valid offset in the destination image

VUID-VkCopyMemoryToImageIndirectCommandNV-imageExtent-07682

imageExtent must specify a valid region in the destination image and can be 0

Valid Usage (Implicit)