-
Notifications
You must be signed in to change notification settings - Fork 473
vkCmdBuildClusterAccelerationStructureIndirectNV(): pCommandInfos->srcInfosArray.stride may be zero #10975
Description
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.