# VkAccelerationStructureGeometryLinearSweptSpheresDataNV(3) Manual Page

## Name

VkAccelerationStructureGeometryLinearSweptSpheresDataNV - Structure specifying a LSS geometry in a bottom-level acceleration structure

Loading… please wait.

## C Specification

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:

    // Provided by VK_NV_ray_tracing_linear_swept_spheres
    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;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` 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` is `NULL` 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.

## Description

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

## See Also

VK_NV_ray_tracing_linear_swept_spheres, VkDeviceOrHostAddressConstKHR, VkDeviceSize, VkFormat, VkIndexType, VkRayTracingLssIndexingModeNV, VkRayTracingLssPrimitiveEndCapsModeNV, VkStructureType

## Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0