iOS: SVG + javascript производительность анимации - PullRequest
0 голосов
/ 13 июля 2020

У меня есть веб-страница с анимацией SVG, запущенной JavaScript. Он хорошо работает в различных браузерах на MacOS, Windows и даже на моем Galaxy 6 с Android 7. Но на моем iPad 2 Mini iOS 12.4.7 во всех браузерах он работает слишком медленно и зависает, а затем вылетает. и автообновление. Я тестирую Safari, Firefox и Chrome. По моему опыту, производительность graphi c лучше всего в Chrome на всех платформах.

URL-адрес publi c: sidewaysskullfinger.com . Я уже отлаживаю Safari iPad на MacBook и вижу, где возникают узкие места. Я только что загрузил Xcode на свой недавно приобретенный MacBook, надеясь, что он включает в себя инструменты для мониторинга использования процессора и графического процессора на моем iPad. Я не вижу ...

Домашняя страница publi c выводит на консоль: прошедшие миллисекунды между выводом символов на экран. На iPad: в первой половине анимации есть начальная задержка вывода первого символа, отображение первого символа для этого текстового элемента SVG. Последующая анимация (после нажатия ДА или НЕТ) просто замедляется через пару секунд, затем вылетает и автоматически обновляется.

Что я могу сделать, чтобы улучшить производительность здесь? Или это единственный вариант убрать функционал? Подходит ли Xcode для поиска инструментов мониторинга? Есть ли другие предложения?

На короткое время я уже провожу стресс-тест графического процессора, когда открывается страница, и iPad становится очень, очень напряженным, выполняя анимацию со скоростью от 1 до 2 кадров в секунду. Так что пока, к сожалению, я буду использовать результат стресс-теста, чтобы упростить или исключить анимацию. Я установил stdDeviation на ноль в фильтре размытия, примененном к тексту (#glow), и это не имеет никакого значения. Кажется, что изменение textContent на этом iPad происходит медленно, даже если оно находится внутри каждого tspan, который представляет собой одну строку фиксированного формата, без переноса, предварительно отформатированную. Первый символ (который вызывает отображение элемента text?) Является самым медленным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...