C Specification
The VkAccelerationStructureBuildGeometryInfoKHR
structure is defined
as:
// Provided by VK_KHR_acceleration_structure
typedef struct VkAccelerationStructureBuildGeometryInfoKHR {
VkStructureType sType;
const void* pNext;
VkAccelerationStructureTypeKHR type;
VkBuildAccelerationStructureFlagsKHR flags;
VkBuildAccelerationStructureModeKHR mode;
VkAccelerationStructureKHR srcAccelerationStructure;
VkAccelerationStructureKHR dstAccelerationStructure;
uint32_t geometryCount;
const VkAccelerationStructureGeometryKHR* pGeometries;
const VkAccelerationStructureGeometryKHR* const* ppGeometries;
VkDeviceOrHostAddressKHR scratchData;
} VkAccelerationStructureBuildGeometryInfoKHR;
Members
-
sType
is the type of this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
type
is a VkAccelerationStructureTypeKHR value specifying the type of acceleration structure being built. -
flags
is a bitmask of VkBuildAccelerationStructureFlagBitsKHR specifying additional parameters of the acceleration structure. -
mode
is a VkBuildAccelerationStructureModeKHR value specifying the type of operation to perform. -
srcAccelerationStructure
points to an existing acceleration structure that is to be used to update thedst
acceleration structure whenmode
isVK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR
. -
dstAccelerationStructure
points to the target acceleration structure for the build. -
geometryCount
specifies the number of geometries that will be built intodstAccelerationStructure
. -
pGeometries
is a pointer to an array of VkAccelerationStructureGeometryKHR structures. -
ppGeometries
is a pointer to an array of pointers to VkAccelerationStructureGeometryKHR structures. -
scratchData
is the device or host address to memory that will be used as scratch memory for the build.
Description
Only one of pGeometries
or ppGeometries
can be a valid pointer,
the other must be NULL
.
Each element of the non-NULL
array describes the data used to build each
acceleration structure geometry.
The index of each element of the pGeometries
or ppGeometries
members of VkAccelerationStructureBuildGeometryInfoKHR is used as the
geometry index during ray traversal.
The geometry index is available in ray shaders via the
RayGeometryIndexKHR
built-in, and is used to
determine hit and intersection shaders executed during traversal.
The geometry index is available to ray queries via the
OpRayQueryGetIntersectionGeometryIndexKHR
instruction.
See Also
VkAccelerationStructureGeometryKHR, VkAccelerationStructureKHR, VkAccelerationStructureTypeKHR, VkBuildAccelerationStructureFlagsKHR, VkBuildAccelerationStructureModeKHR, VkDeviceOrHostAddressKHR, VkStructureType, vkBuildAccelerationStructuresKHR, vkCmdBuildAccelerationStructuresIndirectKHR, vkCmdBuildAccelerationStructuresKHR, vkGetAccelerationStructureBuildSizesKHR
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.