Is there any validation layer that validates Vulkan 1.1 compliance? Is there any convenient way to ensure that I'm not using Vulkan 1.2+ features?
Update
Here is a related github thread: https://github.com/KhronosGroup/MoltenVK/issues/1533
It seems there are potential serious downsides to using Vulkan over Metal via MoltenVK (transcribe cost).
If the application sets the
apiVersion
member ofVkApplicationInfo
to 1.1, theVK_LAYER_KHRONOS_validation
layer will issue messages about any 1.2 usage.Since you've mentioned MoltenVK, you may also want to look up information about the portability subset extension in the Vulkan specification. In particular, I think you need to enable that extension if you are going to use MoltenVK and the extension provides the ability to query for non-conformant behavior.