C Specification
To build or move a cluster acceleration structure or a cluster acceleration structure template call:
// Provided by VK_NV_cluster_acceleration_structure
void vkCmdBuildClusterAccelerationStructureIndirectNV(
VkCommandBuffer commandBuffer,
const VkClusterAccelerationStructureCommandsInfoNV* pCommandInfos);
Parameters
-
commandBuffer
is the command buffer into which the command is recorded. -
pCommandInfos
is a pointer to a VkClusterAccelerationStructureCommandsInfoNV structure containing parameters required for building or moving the cluster acceleration structure.
Description
Similar to vkCmdBuildAccelerationStructuresKHR, this command may
initiate multiple acceleration structures builds and there is no ordering or
synchronization implied between any of the individual acceleration structure
builds.
Accesses to the acceleration structure scratch memory as identified by the
VkClusterAccelerationStructureCommandsInfoNV::scratchData
must
be synchronized with the
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR
pipeline stage and an
access type of
(VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR
|
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR
).
Accesses to each
VkClusterAccelerationStructureCommandsInfoNV::dstImplicitData
,
VkClusterAccelerationStructureCommandsInfoNV::dstAddressesArray
and VkClusterAccelerationStructureCommandsInfoNV::dstSizesArray
must be synchronized with the
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR
pipeline stage and an
access type of
VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR
.
Accesses to memory with input data as identified by any used values of
VkClusterAccelerationStructureCommandsInfoNV::srcInfosArray
,
VkClusterAccelerationStructureCommandsInfoNV::srcInfosCount
and
VkClusterAccelerationStructureCommandsInfoNV::addressResolutionFlags
must be synchronized with the
VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR
pipeline stage and an
access type of
VK_ACCESS_INDIRECT_COMMAND_READ_BIT
.
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.