diff --git a/src/modules/graphics/metal/Graphics.mm b/src/modules/graphics/metal/Graphics.mm index 1e3fa2a89..92f79e0dd 100644 --- a/src/modules/graphics/metal/Graphics.mm +++ b/src/modules/graphics/metal/Graphics.mm @@ -289,7 +289,21 @@ static inline void setSampler(id encoder, Graphics::Re if (@available(macOS 10.15, iOS 13.0, *)) { graphicsInstance = this; - device = MTLCreateSystemDefaultDevice(); +#ifdef LOVE_MACOS + if (isLowPowerPreferred()) + { + for (id dev in MTLCopyAllDevices()) + { + if (dev.isLowPower) + { + device = dev; + break; + } + } + } +#endif + if (device == nil) + device = MTLCreateSystemDefaultDevice(); if (device == nil) throw love::Exception("Metal is not supported on this system."); }