From 5c68eefafa1478c497e60408b7f739ad0af1442d Mon Sep 17 00:00:00 2001 From: Arnaud Vergnet Date: Thu, 13 Apr 2023 21:54:13 +0200 Subject: [PATCH] [drape] do not enable antialiasing in subway layer Fixes performance issues on some Android devices Signed-off-by: Arnaud Vergnet --- drape_frontend/frontend_renderer.cpp | 11 ++++------- drape_frontend/frontend_renderer.hpp | 1 - 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/drape_frontend/frontend_renderer.cpp b/drape_frontend/frontend_renderer.cpp index 9ff3181a23..bb088d0db9 100755 --- a/drape_frontend/frontend_renderer.cpp +++ b/drape_frontend/frontend_renderer.cpp @@ -868,11 +868,9 @@ void FrontendRenderer::AcceptMessage(ref_ptr message) { ref_ptr msg = message; m_transitSchemeEnabled = msg->IsEnabled(); -#ifndef OMIM_OS_IPHONE_SIMULATOR - CHECK(m_context != nullptr, ()); - m_postprocessRenderer->SetEffectEnabled(m_context, PostprocessRenderer::Effect::Antialiasing, - msg->IsEnabled() || m_isAntialiasingEnabled); -#endif + // Enabling anti aliasing destroys performance on some Android devices + // Jagged lines on subway lines are only visible on low density screens + // so we don't enable it here if (!msg->IsEnabled()) m_transitSchemeRenderer->ClearContextDependentResources(make_ref(m_overlayTree)); break; @@ -980,8 +978,7 @@ void FrontendRenderer::AcceptMessage(ref_ptr message) case Message::Type::SetPosteffectEnabled: { ref_ptr msg = message; - if (msg->GetEffect() == PostprocessRenderer::Effect::Antialiasing) - m_isAntialiasingEnabled = msg->IsEnabled(); + // Enabling anti aliasing destroys performance on some Android devices #ifndef OMIM_OS_IPHONE_SIMULATOR CHECK(m_context != nullptr, ()); m_postprocessRenderer->SetEffectEnabled(m_context, msg->GetEffect(), msg->IsEnabled()); diff --git a/drape_frontend/frontend_renderer.hpp b/drape_frontend/frontend_renderer.hpp index 76f9498026..84d314a37a 100755 --- a/drape_frontend/frontend_renderer.hpp +++ b/drape_frontend/frontend_renderer.hpp @@ -398,7 +398,6 @@ private: bool m_forceUpdateScene; bool m_forceUpdateUserMarks; - bool m_isAntialiasingEnabled = false; drape_ptr m_postprocessRenderer; std::vector m_enabledOnStartEffects;