Does MoltenVK allow vertexAttributeAccessBeyondStride if the stride is zero? #2555
-
|
I'm getting this validation and I'm not sure if MoltenVk would accept such a case (is not crashing and working), or if the validation in indeed correct.
Or is the validation being overzealous? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
|
tl;dr I think the spec is too strict here. MoltenVK does support this case; this is because, in Metal, a Vulkan stride of zero corresponds to |
Beta Was this translation helpful? Give feedback.
tl;dr I think the spec is too strict here.
MoltenVK does support this case; this is because, in Metal, a Vulkan stride of zero corresponds to
MTLStepFunctionConstant, where the restriction on attribute offsets and buffer strides doesn't apply. However, a strict reading of the spec would indicate that an attribute's offset must never exceed the buffer stride whenvertexAttributeAccessBeyondStrideis false, even when the stride is zero. Therefore, the validation is correct according to the spec. But this is too strict for what Metal supports. Unfortunately, I don't have any pull with the Vulkan committee anymore, so I can't get the spec fixed here.