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;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.-
maxGeometryCount
is the maximum number of geometries in the bottom level acceleration structure. -
maxInstanceCount
is the maximum number of instances in the top level acceleration structure. -
maxPrimitiveCount
is the maximum number of triangles or AABBs in all geometries in the bottom level acceleration structure. maxPerStageDescriptorAccelerationStructures
is 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_KHR
count against this limit. Only descriptor bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
bit set count against this limit.maxPerStageDescriptorUpdateAfterBindAccelerationStructures
is similar tomaxPerStageDescriptorAccelerationStructures
but counts descriptor bindings from descriptor sets created with or without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
bit set.maxDescriptorSetAccelerationStructures
is 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_KHR
count against this limit. Only descriptor bindings in descriptor set layouts created without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
bit set count against this limit.maxDescriptorSetUpdateAfterBindAccelerationStructures
is similar tomaxDescriptorSetAccelerationStructures
but counts descriptor bindings from descriptor sets created with or without theVK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT
bit set.minAccelerationStructureScratchOffsetAlignment
is 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