Environment:
- OS: Ubuntu Linux 25.10
- GPU and driver version: GeForce RTX 5070 Ti + driver 580.95.05
- SDK or header version if building from repo: SDK 1.4.328.1
- Options enabled (synchronization, best practices, etc.): -
Describe the Issue
Using vkCmdBuildClusterAccelerationStructureIndirectNV with srcInfosArray.stride=0 produces a validation error
Expected behavior
The specification states:
srcInfosArray is a VkStridedDeviceAddressRegionKHR where input data for the build or move operation is read from. If the stride is 0, the structures are assumed to be packed tightly. Its format is dependent on VkClusterAccelerationStructureInputInfoNV::opType as per the table below.
... and yet, using srcInfosArray.stride = 0 produces a validation error:
ERROR: vkCmdBuildClusterAccelerationStructureIndirectNV(): pCommandInfos->srcInfosArray.stride (0) must be greater than size of VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_BUILD_TRIANGLE_CLUSTER_NV (64).
The Vulkan spec states: The stride in srcInfosArray must be greater than the type of structure the address is describing (https://vulkan.lunarg.com/doc/view/1.4.328.1/linux/antora/spec/latest/chapters/accelstructures.html#VUID-VkClusterAccelerationStructureCommandsInfoNV-srcInfosArray-10476)
This is easy to work around by providing a non-zero stride, but does not match the spec text.
Environment:
Describe the Issue
Using
vkCmdBuildClusterAccelerationStructureIndirectNVwithsrcInfosArray.stride=0produces a validation errorExpected behavior
The specification states:
... and yet, using
srcInfosArray.stride = 0produces a validation error:This is easy to work around by providing a non-zero stride, but does not match the spec text.