VkPhysicalDeviceAccelerationStructurePropertiesKHR
The VkPhysicalDeviceAccelerationStructurePropertiesKHR structure is
defined as:
typedef struct VkPhysicalDeviceAccelerationStructurePropertiesKHR {
VkStructureType sType;
void* pNext;
uint64_t maxGeometryCount;
uint64_t maxInstanceCount;
uint64_t maxPrimitiveCount;
uint32_t maxPerStageDescriptorAccelerationStructures;
uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures;
uint32_t maxDescriptorSetAccelerationStructures;
uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures;
uint32_t minAccelerationStructureScratchOffsetAlignment;
} VkPhysicalDeviceAccelerationStructurePropertiesKHR;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.-
maxGeometryCountis the maximum number of geometries in the bottom level acceleration structure. -
maxInstanceCountis the maximum number of instances in the top level acceleration structure. -
maxPrimitiveCountis the maximum number of triangles or AABBs in all geometries in the bottom level acceleration structure. maxPerStageDescriptorAccelerationStructuresis the maximum number of acceleration structure bindings that can be accessible to a single shader stage in a pipeline layout. Descriptor bindings with a descriptor type ofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRcount against this limit. Only descriptor bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set count against this limit.maxPerStageDescriptorUpdateAfterBindAccelerationStructuresis similar tomaxPerStageDescriptorAccelerationStructuresbut counts descriptor bindings from descriptor sets created with or without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set.maxDescriptorSetAccelerationStructuresis the maximum number of acceleration structure descriptors that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptor bindings with a descriptor type ofVK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHRcount against this limit. Only descriptor bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set count against this limit.maxDescriptorSetUpdateAfterBindAccelerationStructuresis similar tomaxDescriptorSetAccelerationStructuresbut counts descriptor bindings from descriptor sets created with or without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BITbit set.minAccelerationStructureScratchOffsetAlignmentis the minimum required alignment, in bytes, for scratch data passed in to an acceleration structure build command. The value must be a power of two.
Due to the fact that the geometry, instance, and primitive counts are
specified at acceleration structure creation as 32-bit values,
maxGeometryCount,
maxInstanceCount, and
maxPrimitiveCount must not exceed
232-1.
If the VkPhysicalDeviceAccelerationStructurePropertiesKHR structure is included in the pNext chain of the
VkPhysicalDeviceProperties2 structure passed to
vkGetPhysicalDeviceProperties2, it is filled in with each
corresponding implementation-dependent property.
Limits specified by this structure must match those specified with the same name in VkPhysicalDeviceRayTracingPropertiesNV.
Valid Usage (Implicit)
VUID-VkPhysicalDeviceAccelerationStructurePropertiesKHR-sType-sType
sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR