From d6f90c497f78dcbfe7020f03423828019c63c794 Mon Sep 17 00:00:00 2001 From: Sam Gateau Date: Thu, 13 Jun 2019 10:16:57 -0700 Subject: [PATCH] FIlter on the gpu model name for ththe 2 known cases --- libraries/platform/src/platform/Profiler.cpp | 27 ++++++++++---------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/libraries/platform/src/platform/Profiler.cpp b/libraries/platform/src/platform/Profiler.cpp index 8d1ed40e30..0e8b9a65a8 100644 --- a/libraries/platform/src/platform/Profiler.cpp +++ b/libraries/platform/src/platform/Profiler.cpp @@ -134,21 +134,22 @@ bool filterOnProcessors(const platform::json& computer, const platform::json& cp bool Profiler::isRenderMethodDeferredCapable() { #if defined(Q_OS_MAC) auto computer = platform::getComputer(); - if (computer.count(keys::computer::model)) { - const auto model = computer[keys::computer::model].get(); - if (model.find("MacBookAir") != std::string::npos) { - return false; - } + const auto computerModel = (computer.count(keys::computer::model) ? computer[keys::computer::model].get() : ""); + + auto gpuInfo = platform::getGPU(0); + const auto gpuModel = (gpuInfo.count(keys::gpu::model) ? gpuInfo[keys::gpu::model].get() : ""); + + + // Macbook air 2018 are a problem + if ((computerModel.find("MacBookAir") != std::string::npos) && (gpuModel.find("Intel HD Graphics 6000") != std::string::npos)) { + return false; + } + + // We know for fact that the INtel Iris is problematic... + if ((gpuModel.find("Intel Iris") != std::string::npos)) { + return false; } - -/* auto gpuInfo = platform::getGPU(0); - if (gpuInfo.count(keys::gpu::model)) { - const auto model = computer[keys::gpu::model].get(); - if (model.find("MacBookAir") != std::string::npos) { - } - } -*/ return true; #elif defined(Q_OS_ANDROID) return false;