vkCopyMemoryToAccelerationStructureKHR
To copy host accessible memory to an acceleration structure, call:
VkResult vkCopyMemoryToAccelerationStructureKHR(
VkDevice device,
VkDeferredOperationKHR deferredOperation,
const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
deviceis the device which ownspInfo→dst.deferredOperationis an optional VkDeferredOperationKHR to request deferral for this command.pInfois a pointer to a VkCopyMemoryToAccelerationStructureInfoKHR structure defining the copy operation.
This command fulfills the same task as vkCmdCopyMemoryToAccelerationStructureKHR but is executed by the host.
This command can accept acceleration structures produced by either vkCmdCopyAccelerationStructureToMemoryKHR or vkCopyAccelerationStructureToMemoryKHR.
Valid Usage
VUID-vkCopyMemoryToAccelerationStructureKHR-accelerationStructureHostCommands-03583
The VkPhysicalDeviceAccelerationStructureFeaturesKHR::accelerationStructureHostCommands
feature must be enabled
VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-03678
Any previous deferred operation that was associated with
deferredOperation must be complete
VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-03729
pInfo→src.hostAddress must be a valid host pointer
VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-03750
pInfo→src.hostAddress must be aligned to 16 bytes
VUID-vkCopyMemoryToAccelerationStructureKHR-buffer-03730
The buffer used to create pInfo→dst must be bound to
host-visible device memory
VUID-vkCopyMemoryToAccelerationStructureKHR-buffer-03782
The buffer used to create pInfo→dst must be bound to
memory that was not allocated with multiple instances
Valid Usage (Implicit)
VUID-vkCopyMemoryToAccelerationStructureKHR-device-parameter
device must be a valid VkDevice handle
VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-parameter
If deferredOperation is not VK_NULL_HANDLE, deferredOperation must be a valid VkDeferredOperationKHR handle
VUID-vkCopyMemoryToAccelerationStructureKHR-pInfo-parameter
pInfo must be a valid pointer to a valid VkCopyMemoryToAccelerationStructureInfoKHR structure
VUID-vkCopyMemoryToAccelerationStructureKHR-deferredOperation-parent
If deferredOperation is a valid handle, it must have been created, allocated, or retrieved from device