To build an acceleration structure with some parameters sourced on the device call:
// Provided by VK_KHR_ray_tracing void vkCmdBuildAccelerationStructureIndirectKHR( VkCommandBuffer commandBuffer, const VkAccelerationStructureBuildGeometryInfoKHR* pInfo, VkBuffer indirectBuffer, VkDeviceSize indirectOffset, uint32_t indirectStride);
commandBufferis the command buffer into which the command will be recorded.
pInfois a pointer to a VkAccelerationStructureBuildGeometryInfoKHR structure defining the geometry used to build the acceleration structure.
indirectBufferis the VkBuffer containing
pInfo->geometryCountVkAccelerationStructureBuildOffsetInfoKHR structures defining dynamic offsets to the addresses where geometry data is stored, as defined by
indirectOffsetis the byte offset into
indirectBufferwhere offset parameters begin.
strideis the byte stride between successive sets of offset parameters.
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 (c) 2014-2020 Khronos Group. This work is licensed under a Creative Commons Attribution 4.0 International License.