vkCopyAccelerationStructureKHR(3)

# vkCopyAccelerationStructureKHR(3) Manual Page

## Name

vkCopyAccelerationStructureKHR - Copy an acceleration structure on the host

## C Specification

To copy or compact an acceleration structure on the host, call:

    VkResult vkCopyAccelerationStructureKHR(
        VkDevice                                    device,
        const VkCopyAccelerationStructureInfoKHR*   pInfo);

## Parameters

This command fulfills the same task as vkCmdCopyAccelerationStructureKHR but executed by the host.

## Description

- `device` is the device which owns the acceleration structures.

- `pInfo` is a pointer to a VkCopyAccelerationStructureInfoKHR structure defining the copy operation.

If the VkDeferredOperationInfoKHR structure is included in the `pNext` chain of the VkCopyAccelerationStructureInfoKHR structure, the operation of this command is deferred, as defined in the Deferred Host Operations chapter.

Valid Usage

- All `VkAccelerationStructureKHR` objects referenced by this command must be bound to host-visible memory.

- the `VkPhysicalDeviceRayTracingFeaturesKHR`→`rayTracingHostAccelerationStructureCommands` feature must be enabled

Valid Usage (Implicit)

- `device` must be a valid VkDevice handle

- `pInfo` must be a valid pointer to a valid VkCopyAccelerationStructureInfoKHR structure

Return Codes

On success, this command returns

  - `VK_SUCCESS`

  - `VK_OPERATION_DEFERRED_KHR`

  - `VK_OPERATION_NOT_DEFERRED_KHR`

On failure, this command returns

  - `VK_ERROR_OUT_OF_HOST_MEMORY`

  - `VK_ERROR_OUT_OF_DEVICE_MEMORY`

## See Also

VkCopyAccelerationStructureInfoKHR, VkDevice

## 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.

## Copyright

Copyright (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.