vkCmdCopyMemoryKHR
To copy data between memory ranges, call:
void vkCmdCopyMemoryKHR(
VkCommandBuffer commandBuffer,
const VkCopyDeviceMemoryInfoKHR* pCopyMemoryInfo);
pub fn cmd_copy_memory_khr(
command_buffer: vk::CommandBuffer,
p_copy_memory_info: *const vk::CopyDeviceMemoryInfoKHR,
);
commandBufferis the command buffer into which the command will be recorded.pCopyMemoryInfoa pointer to a VkCopyDeviceMemoryInfoKHR structure describing the copies to perform.
Valid Usage
VUID-vkCmdCopyMemoryKHR-commandBuffer-13012
If commandBuffer is an unprotected command buffer and
protectedNoFault is not supported,
the srcCopyFlags member of all elements of
pCopyMemoryInfo→pRegions must not include
VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR
VUID-vkCmdCopyMemoryKHR-commandBuffer-13013
If commandBuffer is an unprotected command buffer and
protectedNoFault is not supported,
the dstCopyFlags member of all elements of
pCopyMemoryInfo→pRegions must not include
VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR
VUID-vkCmdCopyMemoryKHR-commandBuffer-13014
If commandBuffer is a protected command buffer and
protectedNoFault is not supported,
the dstCopyFlags member of all elements of
pCopyMemoryInfo→pRegions must include
VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR
Valid Usage (Implicit)
VUID-vkCmdCopyMemoryKHR-commandBuffer-parameter
commandBuffer must be a valid VkCommandBuffer handle
VUID-vkCmdCopyMemoryKHR-pCopyMemoryInfo-parameter
If pCopyMemoryInfo is not NULL, pCopyMemoryInfo must be a valid pointer to a valid VkCopyDeviceMemoryInfoKHR structure
VUID-vkCmdCopyMemoryKHR-commandBuffer-recording
commandBuffer must be in the recording state
VUID-vkCmdCopyMemoryKHR-commandBuffer-cmdpool
The VkCommandPool that commandBuffer was allocated from must support VK_QUEUE_TRANSFER_BIT operations
VUID-vkCmdCopyMemoryKHR-renderpass
This command must only be called outside of a render pass instance
VUID-vkCmdCopyMemoryKHR-suspended
This command must not be called between suspended render pass instances
VUID-vkCmdCopyMemoryKHR-videocoding
This command must only be called outside of a video coding scope
Host Synchronization
- Host access to
commandBuffermust be externally synchronized - Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized