Function Prototype

vkDestroyAccelerationStructureKHR

Destroy an acceleration structure object

To destroy an acceleration structure, call:

void vkDestroyAccelerationStructureKHR(
    VkDevice device,
    VkAccelerationStructureKHR accelerationStructure,
    const VkAllocationCallbacks* pAllocator);
  • device is the logical device that destroys the acceleration structure.
  • accelerationStructure is the acceleration structure to destroy.
  • pAllocator controls host memory allocation as described in the Memory Allocation chapter.

Valid Usage

VUID-vkDestroyAccelerationStructureKHR-accelerationStructure-02442

All submitted commands that refer to accelerationStructure must have completed execution

VUID-vkDestroyAccelerationStructureKHR-accelerationStructure-02443

If VkAllocationCallbacks were provided when accelerationStructure was created, a compatible set of callbacks must be provided here

VUID-vkDestroyAccelerationStructureKHR-accelerationStructure-02444

If no VkAllocationCallbacks were provided when accelerationStructure was created, pAllocator must be NULL

Valid Usage (Implicit)

VUID-vkDestroyAccelerationStructureKHR-accelerationStructure-parameter

If accelerationStructure is not VK_NULL_HANDLE, accelerationStructure must be a valid VkAccelerationStructureKHR handle

VUID-vkDestroyAccelerationStructureKHR-pAllocator-parameter

If pAllocator is not NULL, pAllocator must be a valid pointer to a valid VkAllocationCallbacks structure

VUID-vkDestroyAccelerationStructureKHR-accelerationStructure-parent

If accelerationStructure is a valid handle, it must have been created, allocated, or retrieved from device

Host Synchronization

  • Host access to accelerationStructure must be externally synchronized ::