See KhronosGroup/MoltenVK#2068
From KhronosGroup/MoltenVK#2068 (comment)
Vulkan spec says:
The rules should have as the first rule that rz wins over ry and rx, and the second rule that ry wins over rx.
An implementation may choose other rules, but the rules must be deterministic and depend only on (rx,ry,rz).
Metal with Apple silicon has different rules:
rx wins over ry and rz
ry wins over rz
SPIRV-Cross chooses to polyfill so that its generated shaders will behave as the Vulkan "should" rule.
See KhronosGroup/SPIRV-Cross#2233
See KhronosGroup/MoltenVK#2068
From KhronosGroup/MoltenVK#2068 (comment)
SPIRV-Cross chooses to polyfill so that its generated shaders will behave as the Vulkan "should" rule.
See KhronosGroup/SPIRV-Cross#2233