VkAccelerationStructureGeometrySpheresDataNV
If VkAccelerationStructureGeometrySpheresDataNV is included in the
pNext chain of a VkAccelerationStructureGeometryKHR structure,
then that structures defines the sphere’s geometry data.
The VkAccelerationStructureGeometrySpheresDataNV structure is defined
as:
typedef struct VkAccelerationStructureGeometrySpheresDataNV {
VkStructureType sType;
const void* pNext;
VkFormat vertexFormat;
VkDeviceOrHostAddressConstKHR vertexData;
VkDeviceSize vertexStride;
VkFormat radiusFormat;
VkDeviceOrHostAddressConstKHR radiusData;
VkDeviceSize radiusStride;
VkIndexType indexType;
VkDeviceOrHostAddressConstKHR indexData;
VkDeviceSize indexStride;
} VkAccelerationStructureGeometrySpheresDataNV;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.vertexFormatis the VkFormat of each sphere’s vertex element.vertexDatais a device or host address to memory containing vertex data in form of pairs of centers of spheres that define all sphere geometry.vertexStrideis the stride in bytes between each vertex element.radiusFormatis the VkFormat of each sphere’s radius.radiusDatais a device or host address to memory containing sphere’s radius data value.radiusStrideis the stride in bytes between each radius value.indexTypeis the VkIndexType of each index element.indexDataisNULLor a device or host address to memory containing index data for vertex and radius buffers for this geometry.indexStrideis the stride in bytes between each index element.
Valid Usage
VUID-VkAccelerationStructureGeometrySpheresDataNV-None-10429
The spheres feature must be enabled
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexData-10430
The memory address in vertexData must not be 0 or `NULL'
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexStride-10431
vertexStride must be a multiple of:
- the size of the format specified in
vertexFormatif that format is a packed format - the smallest component size specified in
vertexFormatif that format is not a packed format ::
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexStride-10432
vertexStride and radiusStride must be less than or equal to
232-1
VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusData-10433
The memory address in radiusData must not be 0 or `NULL'
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexFormat-10434
The format features of
vertexFormat must contain
VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR
VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusFormat-10435
The format features of
radiusFormat must contain
VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_RADIUS_BUFFER_BIT_NV
VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusData-10436
All values referenced in radiusData must be greater than or equal
to 0
VUID-VkAccelerationStructureGeometrySpheresDataNV-indexData-10437
If indexData is not NULL, indexType must be one of
VK_INDEX_TYPE_UINT16 or VK_INDEX_TYPE_UINT32
::
Valid Usage (Implicit)
VUID-VkAccelerationStructureGeometrySpheresDataNV-sType-sType
sType must be VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexFormat-parameter
vertexFormat must be a valid VkFormat value
VUID-VkAccelerationStructureGeometrySpheresDataNV-vertexData-parameter
vertexData must be a valid VkDeviceOrHostAddressConstKHR union
VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusFormat-parameter
radiusFormat must be a valid VkFormat value
VUID-VkAccelerationStructureGeometrySpheresDataNV-radiusData-parameter
radiusData must be a valid VkDeviceOrHostAddressConstKHR union
VUID-VkAccelerationStructureGeometrySpheresDataNV-indexType-parameter
indexType must be a valid VkIndexType value
VUID-VkAccelerationStructureGeometrySpheresDataNV-indexData-parameter
indexData must be a valid VkDeviceOrHostAddressConstKHR union