C Specification

// Provided by VK_NV_cluster_acceleration_structure
typedef struct VkClusterAccelerationStructureInstantiateClusterInfoNV {
    uint32_t                    clusterIdOffset;
    uint32_t                    geometryIndexOffset:24;
    uint32_t                    reserved:8;
    VkDeviceAddress             clusterTemplateAddress;
    VkStridedDeviceAddressNV    vertexBuffer;
} VkClusterAccelerationStructureInstantiateClusterInfoNV;

Members

  • clusterIdOffset is an unsigned offset applied to the clusterID value stored in the cluster template.

  • geometryIndexOffset is a signed offset applied to the geometry index of each triangle.

  • reserved is reserved for future use.

  • clusterTemplateAddress is the address of a previously built cluster template.

  • vertexBuffer is either NULL or a VkStridedDeviceAddressNV structure containing the vertex data for the indexed triangles stored in the cluster template.

Description

Valid Usage
  • VUID-VkClusterAccelerationStructureInstantiateClusterInfoNV-vertexBuffer-10507
    vertexBuffer must not be NULL if the template was built without vertex data

  • VUID-VkClusterAccelerationStructureInstantiateClusterInfoNV-vertexBuffer-10508
    The format in vertexBuffer must match the original format specified in VkClusterAccelerationStructureTriangleClusterInputNV

  • VUID-VkClusterAccelerationStructureInstantiateClusterInfoNV-reserved-10509
    reserved must be 0

  • VUID-VkClusterAccelerationStructureInstantiateClusterInfoNV-geometryIndexOffset-10510
    The maximum geometry index after using the value in geometryIndexOffset must be less than VkPhysicalDeviceClusterAccelerationStructurePropertiesNV::maxClusterGeometryIndex

See Also

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 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0