VkAccelerationStructureGeometryLinearSweptSpheresDataNV
If VkAccelerationStructureGeometryLinearSweptSpheresDataNV
is included
in the pNext
chain of a VkAccelerationStructureGeometryKHR
structure, then that structures defines the linear swept sphere’s (LSS)
geometry data.
The VkAccelerationStructureGeometryLinearSweptSpheresDataNV
structure
is defined as:
typedef struct VkAccelerationStructureGeometryLinearSweptSpheresDataNV {
VkStructureType sType;
const void* pNext;
VkFormat vertexFormat;
VkDeviceOrHostAddressConstKHR vertexData;
VkDeviceSize vertexStride;
VkFormat radiusFormat;
VkDeviceOrHostAddressConstKHR radiusData;
VkDeviceSize radiusStride;
VkIndexType indexType;
VkDeviceOrHostAddressConstKHR indexData;
VkDeviceSize indexStride;
VkRayTracingLssIndexingModeNV indexingMode;
VkRayTracingLssPrimitiveEndCapsModeNV endCapsMode;
} VkAccelerationStructureGeometryLinearSweptSpheresDataNV;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.vertexFormat
is the VkFormat of each LSS vertex element.vertexData
is a device or host address to memory containing vertex data for this geometry.vertexStride
is the stride in bytes between each vertex element.radiusFormat
is the VkFormat of each LSS radius.radiusData
is a device or host address to memory containing LSS radius data value.radiusStride
is the stride in bytes between each radius value.indexType
is the VkIndexType of each index element.indexData
isNULL
or a device or host address to memory containing index data for vertex and radius buffers for this geometry.indexStride
is the stride in bytes between each index element.indexingMode
is a VkRayTracingLssIndexingModeNV value specifying the mode of indexing.endCapsMode
is a VkRayTracingLssPrimitiveEndCapsModeNV value specifying the endcaps mode for LSS primitives.
If an index buffer is not specified in indexData
, LSS primitives are
rendered individually using subsequent pairs of vertices similar to
VK_PRIMITIVE_TOPOLOGY_LINE_LIST
.
Valid Usage
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-None-10419
The linearSweptSpheres feature must be enabled
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexData-10420
The memory address in vertexData
must not be 0
or `NULL'
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexStride-10421
vertexStride
must be a multiple of:
- the size of the format specified in
vertexFormat
if that format is a packed format - the component size specified in
vertexFormat
if that format is not a packed format ::
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexStride-10422
vertexStride
and radiusStride
must be less than or equal to
232-1
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexFormat-10423
The format features of
vertexFormat
must contain
VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusFormat-10424
The format features of
radiusFormat
must contain
VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_RADIUS_BUFFER_BIT_NV
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusData-10425
The memory address in radiusData
must not be 0
or `NULL'
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusData-10426
All values referenced in radiusData
must be greater than or equal
to 0
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexingMode-10427
If indexingMode
is
VK_RAY_TRACING_LSS_INDEXING_MODE_SUCCESSIVE_NV
, indexData
must not be NULL
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexData-10428
If indexData
is not NULL
, indexType
must be one of
VK_INDEX_TYPE_UINT16
or VK_INDEX_TYPE_UINT32
::
Valid Usage (Implicit)
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-sType-sType
sType
must be VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexFormat-parameter
vertexFormat
must be a valid VkFormat value
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-vertexData-parameter
vertexData
must be a valid VkDeviceOrHostAddressConstKHR union
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusFormat-parameter
radiusFormat
must be a valid VkFormat value
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-radiusData-parameter
radiusData
must be a valid VkDeviceOrHostAddressConstKHR union
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexType-parameter
indexType
must be a valid VkIndexType value
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexData-parameter
indexData
must be a valid VkDeviceOrHostAddressConstKHR union
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-indexingMode-parameter
indexingMode
must be a valid VkRayTracingLssIndexingModeNV value
VUID-VkAccelerationStructureGeometryLinearSweptSpheresDataNV-endCapsMode-parameter
endCapsMode
must be a valid VkRayTracingLssPrimitiveEndCapsModeNV value