You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
perhaps related, but CTS crashes for me on the following test case with the following Metal validation error: dEQP-VK.robustness.robustness1_vertex_access.out_of_bounds_stride_30_middle_of_buffer
-[MTLVertexDescriptorInternal newSerializedDescriptor]:743: failed assertion `Serialized Descriptor Creation
None of the attributes set bufferIndex to 29, but MTLVertexDescriptor set buffer layout[29].stride(80).
'
The issue comes from not correctly setting the maximum bound used vertex buffer binding. initReservedVertexAttributeBufferCount reserves more than the used vertex buffers by the pipeline. However, when we set the vertexDescriptor data for those buffers, we skip the ones that are not used.
This issue can fixed by ignoring the vertex buffers that are not used when we reserve the bindings. Hacked values to check if that would fix the issue and the tests pass. I need to get a better understanding on how to propose the change since the data we require for the solution is only filled after the function that calls initReservedVertexAttributeBufferCount. Will come back to this issue once remaining CTS failures are triaged. Leaving this as a note for myself, or for anyone wanting to fix the issue
PR #1595 (which fixed issue #1592) introduced a smaller secondary regression that causes the following CTS tests to Fail instead of Pass:
Any fix to this should be validated by the posters of the original issue #1592.
The text was updated successfully, but these errors were encountered: