From 68225e4919e7bfb105d3fc5dafdd8ce536016c85 Mon Sep 17 00:00:00 2001 From: Dani Frank Date: Fri, 12 May 2023 23:27:03 +0300 Subject: [PATCH] Fix simulator feature discovery Fix depth clamp and texture swizzle feature discovery on simulator builds Both of these features are not supported by the iphone simulator and leads to crashes when used --- MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm index 2872db17e..8ad6fd876 100644 --- a/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm +++ b/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm @@ -1802,7 +1802,11 @@ if ( mvkOSVersionIsAtLeast(13.0) ) { _metalFeatures.mslVersionEnum = MTLLanguageVersion2_2; _metalFeatures.placementHeaps = mvkConfig().useMTLHeap; +#if MVK_OS_SIMULATOR + _metalFeatures.nativeTextureSwizzle = false; +#else _metalFeatures.nativeTextureSwizzle = true; +#endif if (supportsMTLGPUFamily(Apple3)) { _metalFeatures.native3DCompressedTextures = true; } @@ -2196,9 +2200,13 @@ _features.dualSrcBlend = true; } +#if MVK_OS_SIMULATOR + _features.depthClamp = false; +#else if (supportsMTLFeatureSet(iOS_GPUFamily2_v4)) { _features.depthClamp = true; } +#endif if (supportsMTLFeatureSet(iOS_GPUFamily3_v2)) { _features.tessellationShader = true;