Mac: Update MoltenVK to v1.4.1
Description of Changes
Updates MoltenVK from v1.2.9 to v1.4.1.
Rationale behind Changes
Should hopefully now work and not totally break rendering when using Vulkan on Mac.
Suggested Testing Steps
Test to see if it explodes when using Vulkan on Mac.
Did you use AI to help find, test, or implement this issue or feature?
No
Can you add this? MoltenVK switched the default to use argument buffers, as it's more capable of satisfying vulkan spec, but the old mode is still slightly faster for applications that don't need it (though since we mostly use push descriptors, the difference is pretty negligible for us).
diff --git a/.github/workflows/scripts/macos/build-dependencies-universal.sh b/.github/workflows/scripts/macos/build-dependencies-universal.sh
index 2108d15e0a..9dc6d7b599 100755
--- a/.github/workflows/scripts/macos/build-dependencies-universal.sh
+++ b/.github/workflows/scripts/macos/build-dependencies-universal.sh
@@ -277,7 +277,7 @@ rm -fr "MoltenVK-${MOLTENVK}"
tar xf "v$MOLTENVK.tar.gz"
cd "MoltenVK-${MOLTENVK}"
./fetchDependencies --macos
-make macos
+make macos MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS=0
cp Package/Latest/MoltenVK/dynamic/dylib/macOS/libMoltenVK.dylib "$INSTALLDIR/lib/"
cd ..
diff --git a/.github/workflows/scripts/macos/build-dependencies.sh b/.github/workflows/scripts/macos/build-dependencies.sh
index a63a59faf3..27d2645b2e 100755
--- a/.github/workflows/scripts/macos/build-dependencies.sh
+++ b/.github/workflows/scripts/macos/build-dependencies.sh
@@ -225,7 +225,7 @@ cd "MoltenVK-${MOLTENVK}"
sed -i '' 's/xcodebuild "$@"/xcodebuild $XCODEBUILD_EXTRA_ARGS "$@"/g' fetchDependencies
sed -i '' 's/XCODEBUILD :=/XCODEBUILD ?=/g' Makefile
XCODEBUILD_EXTRA_ARGS="VALID_ARCHS=x86_64" ./fetchDependencies --macos
-XCODEBUILD="set -o pipefail && xcodebuild VALID_ARCHS=x86_64" make macos
+XCODEBUILD="set -o pipefail && xcodebuild VALID_ARCHS=x86_64" make macos MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS=0
cp Package/Latest/MoltenVK/dynamic/dylib/macOS/libMoltenVK.dylib "$INSTALLDIR/lib/"
cd ..
Can you add this?
Done
Can't MVK_USE_METAL_PRIVATE_API=1 be set?
Add support for new features and extensions when using MVK_USE_METAL_PRIVATE_API:
Disabling primitive restart
VK_EXT_legacy_dithering
VK_EXT_non_seamless_cube_map
VK_EXT_primitive_topology_list_restart
VK_EXT_provoking_vertex