如何确保使用 Vulkan 的应用程序的 MoltenVK 兼容性?

How to ensure MoltenVK compatibility of applications using Vulkan?

是否有验证 Vulkan 1.1 合规性的验证层?有什么方便的方法可以确保我没有使用 Vulkan 1.2+ 功能吗?

更新

这是一个相关的 github 话题:https://github.com/KhronosGroup/MoltenVK/issues/1533

似乎通过 MoltenVK 使用 Vulkan 而不是 Metal 存在潜在的严重缺点(转录成本)。

如果应用程序将 VkApplicationInfoapiVersion 成员设置为 1.1,VK_LAYER_KHRONOS_validation 层将发出有关任何 1.2 用法的消息。

既然您提到了 MoltenVK,您可能还想在 Vulkan 规范中查找有关可移植性子集扩展的信息。特别是,如果您要使用 MoltenVK,我认为您需要启用该扩展,并且该扩展提供了查询 non-conformant 行为的能力。