dolphin/Source/Core/VideoBackends
Pierre de La Morinerie 0ecfaf3b9e
Metal: enable concurrent compilation only if available
Bug: https://bugs.dolphin-emu.org/issues/13404

On macOS 13.6 / Intel HD 5000, Dolphin crashes with this message:

> -[MTLIGAccelDevice setShouldMaximizeConcurrentCompilation:]: unrecognized selector

This should be available on all macOS 13.3+ systems – but when using OCLP drivers,
some devices use an older version of Metal.framework, which doesn't expose the selector.

This concerns Intel Ivy Bridge, Haswell and Nvidia Kepler when using OCLP on macOS 13.3
or newer.
(See
34676702f4/docs/PATCHEXPLAIN.md?plain=1#L354C1-L354C83)

As the behavior is an optional optimization anyway, perform a dynamic
detection to avoid crashing if the feature is not available.
2023-11-24 15:09:25 +01:00
..
D3D VideoBackends / VideoCommon: add new uniform buffer object for custom shader materials (slot 3, geometry shader buffer moves to slot 4 if available) 2023-10-06 02:17:42 -05:00
D3D12 VideoBackends / VideoCommon: add new uniform buffer object for custom shader materials (slot 3, geometry shader buffer moves to slot 4 if available) 2023-10-06 02:17:42 -05:00
D3DCommon Video: implement color correction to match the NTSC and PAL color spaces (and gamma) that GC and Wii targeted. 2023-06-19 01:34:42 +03:00
Metal Metal: enable concurrent compilation only if available 2023-11-24 15:09:25 +01:00
Null Merge pull request #11699 from Pokechu22/gl-check-maximum-samples 2023-06-09 15:07:07 +02:00
OGL VideoBackends:OGL: Handle when SSBOs are only supported in some shader stages 2023-10-25 17:47:04 +02:00
Software Rename bpmem.copyMipMapStrideChannels to bpmem.copyDestStride 2023-11-11 23:32:14 -08:00
Vulkan VideoCommon: avoid Vulkan validation errors when custom shader ubo isn't set up 2023-10-06 02:17:43 -05:00
CMakeLists.txt CMake: Check `WIN32` instead of `CMAKE_SYSTEM_NAME STREQUAL Windows` 2023-04-06 18:37:45 -07:00