From e0cabf9e1ce38699f24947c515c86e7b823b0ce7 Mon Sep 17 00:00:00 2001 From: Jack Andersen Date: Tue, 21 Nov 2017 12:18:23 -1000 Subject: [PATCH] Make Metal default graphics API for macOS --- lib/mac/ApplicationCocoa.mm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/lib/mac/ApplicationCocoa.mm b/lib/mac/ApplicationCocoa.mm index b34f81e..40be38e 100644 --- a/lib/mac/ApplicationCocoa.mm +++ b/lib/mac/ApplicationCocoa.mm @@ -92,15 +92,21 @@ public: /* Determine which graphics API to use */ #if BOO_HAS_METAL + bool useGL = false; for (const SystemString& arg : args) - if (!arg.compare("--metal")) + if (!arg.compare("--gl")) { - m_metalCtx.m_dev = MTLCreateSystemDefaultDevice(); - m_metalCtx.m_q = [m_metalCtx.m_dev newCommandQueue]; - Log.report(logvisor::Info, "using Metal renderer"); + useGL = true; break; } - if (!m_metalCtx.m_dev) + if (!useGL) + m_metalCtx.m_dev = MTLCreateSystemDefaultDevice(); + if (m_metalCtx.m_dev) + { + m_metalCtx.m_q = [m_metalCtx.m_dev newCommandQueue]; + Log.report(logvisor::Info, "using Metal renderer"); + } + else Log.report(logvisor::Info, "using OpenGL renderer"); #else Log.report(logvisor::Info, "using OpenGL renderer");