Phonegap iOS: после возобновления игра работает медленно

Я работаю над iOS-сборкой многоплатформенной игры HTML5. Я использую PhoneGap 3.0.0 и Xcode 4.6.3 и тестирую на iPad Mini с iOS 6.1.3.

Когда приложение приостанавливается во время игры, игра работает со скоростью 1 кадр/с. Проблема не возникает для меню.

Инструменты Apple говорят мне, что приложение после возобновления тратит более 90% времени на функцию, называемую copyImageBlockSetPNG ImageIO.

Игра более интенсивная, чем обычная веб-игра, с большими листами спрайтов и поиском пути.

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

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

Есть ли лучший способ немедленно возобновить игру без падения частоты кадров?


person user2766683    schedule 10.09.2013    source источник


Ответы (1)


Я узнал, как справиться с этой проблемой.

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

person user2766683    schedule 11.09.2013