There is a lot of test in CTS (e.g. "dEQP-VK.texture.filter.**") that try to use an attribute offset higher than the stride. For example, an offset of 64 on a buffer with stride 8. It is technically valid in Vulkan, but Metal doesn't like it.
One possible solution would be to detect this at pipeline creation before linking the shader, then assign additional buffer inputs to be used in the shader by those attributes... adjusting the binding model accordingly.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4