Fix #106905: Increase OS version requirement for Metal on Intel

Certain feature requirements unsupported by older OS builds
caused failures when running Intel GPUs on older OS's.

This patch increases the minimum required OS version
to one which covers devices supporting all required features.

Authored by Apple: Michael Parkin-White

Pull Request: https://projects.blender.org/blender/blender/pulls/109921
This commit is contained in:
Jason Fielder
2023-07-11 09:03:47 +02:00
committed by Jeroen Bakker
parent 74c7615dba
commit ac708cb33a

View File

@@ -318,6 +318,19 @@ bool MTLBackend::metal_is_supported()
}
}
/* If Intel, we must be on macOS 11.2+ for full Metal backend support. */
NSString *gpu_name = [device name];
const char *vendor = [gpu_name UTF8String];
if ((strstr(vendor, "Intel") || strstr(vendor, "INTEL"))) {
if (@available(macOS 11.2, *)) {
/* Intel device supported -- Carry on.
* NOTE: @available syntax cannot be negated. */
}
else {
return false;
}
}
/* Metal Viewport requires argument buffer tier-2 support and Barycentric Coordinates.
* These are available on most hardware configurations supporting Metal 2.2. */
bool supports_argument_buffers_tier2 = ([device argumentBuffersSupport] ==