2016-09-25 3 views
0

В нашей игре javaScript у нас возникла проблема, когда события «touchmove» медленны и «janky» до тех пор, пока ориентация не изменится, и в какой момент они снова станут гладкими.Синхронизация Android Chrome прерывисто медленно до изменения ориентации

Медленность возвращается, когда игра выполняет большую работу, как загрузка уровня.

Вот видео, в котором показано движение медленного касания в действии и изменение ориентации, которое устраняет проблему.

https://youtu.be/7rSqkJuOQjc


следующее предупреждение появляется в журнале

Обработка входного события «» TouchMove было задержано на 141 мс из-за основной поток быть занят. Рассмотрите обработчик события маркировки как «пассивный», чтобы сделать страницу более ответственной.

Однако медленные события сохраняются после того, как игра прекратила делать тяжелый подъем, как загрузка уровня и спрайтов.

Я не могу использовать пассивные обработчики в любом случае, потому что панорамирование карты должно предотвратитьDefault, чтобы остановить прокрутку интерфейса.


Я предполагаю, что медлительность связана касаться событий, как я измерил, как часто сенсорные обработчики вызываются, и они кажутся странными.

Получит 5-10 событий подряд в ~ 20 мс, тогда будет около 150-200 мс, затем еще одна партия быстрых событий и еще одна медленная.

После изменения ориентации, все события, полученные в рамках 20мса


Я также измерил мои ответы от requestAnimationFrame, и они, кажется, довольно солидного 16.8ms


Для тех, У вас есть проблема. Задайте вопрос по этому вопросу: https://blight.ironhelmet.com

Проблемы возникают в Chrome и Cordova, как на родном, так и на Crosswal к. Проблемы не возникают в Safari на iOS или любом проверенном браузере Desktop.


Я хотел бы знать, есть ли у кого-нибудь еще эта проблема и как я могу ее исправить.

Можно ли принудительно изменить ориентацию или что-то другое во время изменения ориентации, используя javaScript?

ответ

0

Аппаратный рендер не пинал, а медленный рендеринг программного обеспечения замедлял обработку событий. (рисование пикселей с одного холста на другое)

После изменения ориентации кажется, что сборщик мусора очистил неиспользуемые полотна, которые позволили аппарату визуализации нажать.

 Смежные вопросы

  • Нет связанных вопросов^_^