Structures
VkAccelerationStructureGeometryKHR
Structure specifying geometries to be built into an acceleration structure
The VkAccelerationStructureGeometryKHR
structure is defined as:
typedef struct VkAccelerationStructureGeometryKHR {
VkStructureType sType;
const void* pNext;
VkGeometryTypeKHR geometryType;
VkAccelerationStructureGeometryDataKHR geometry;
VkGeometryFlagsKHR flags;
} VkAccelerationStructureGeometryKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.geometryType
describes which type of geometry thisVkAccelerationStructureGeometryKHR
refers to.geometry
is a VkAccelerationStructureGeometryDataKHR union describing the geometry data for the relevant geometry type.flags
is a bitmask of VkGeometryFlagBitsKHR values describing additional properties of how the geometry should be built.
Valid Usage (Implicit)
VUID-VkAccelerationStructureGeometryKHR-sType-sType
sType
must be VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR
VUID-VkAccelerationStructureGeometryKHR-pNext-pNext
pNext
must be NULL
VUID-VkAccelerationStructureGeometryKHR-geometryType-parameter
geometryType
must be a valid VkGeometryTypeKHR value
VUID-VkAccelerationStructureGeometryKHR-triangles-parameter
If geometryType
is VK_GEOMETRY_TYPE_TRIANGLES_KHR
, the triangles
member of geometry
must be a valid VkAccelerationStructureGeometryTrianglesDataKHR structure
VUID-VkAccelerationStructureGeometryKHR-aabbs-parameter
If geometryType
is VK_GEOMETRY_TYPE_AABBS_KHR
, the aabbs
member of geometry
must be a valid VkAccelerationStructureGeometryAabbsDataKHR structure
VUID-VkAccelerationStructureGeometryKHR-instances-parameter
If geometryType
is VK_GEOMETRY_TYPE_INSTANCES_KHR
, the instances
member of geometry
must be a valid VkAccelerationStructureGeometryInstancesDataKHR structure
VUID-VkAccelerationStructureGeometryKHR-flags-parameter
flags
must be a valid combination of VkGeometryFlagBitsKHR values