Создания высокопроизводительных игр для мобильных платформ на HTML5 – это просто. Маленькие секреты и хитрости, позволяющие добиться максимальной производительности от мобильных браузеров на реальных примерах.
2. О чем доклад
•
Какая стояла цель перед нами?
•
Сложности, с которыми мы столкнулись
•
Пути решения
•
Примеры готовых продуктов
http://true-token.com
3. Задачи
•
Игра на HTML5 с использованием
физики (Box2D 1.4.3.1)
•
Поддержка множества устройств с
различным разрешением экрана
•
FPS не менее 24 на устройствах
класса IPhone 3G и выше
•
Поддержка множества ОС
http://true-token.com
5. Кто виноват?
Время, затрачиваемое на различные
операции:
-
Игровая логика ~ 1%
-
Просчет физики ~ 9%
-
Рендеринг ~ 90%
http://true-token.com
6. «НЕТ» масштабированию
Обычное Использование browser scale или canvas scale
решение Низкая производительность (2-4 fps)
•
Пакеты графики для каждого разрешения
Наше
решение
•.
Запрет user-scalable в мобильном
браузере
Прирост производительности
Результат
до 500%
http://true-token.com
7. Разделение сцены
Обычное Очистка сцены и рендеринг всех спрайтов
решение Низкая производительность (2-4 fps)
Разделение спрайтов на статичные и
Наше динамичные.
решение Использование не одного, а минимум 2-х
canvas – для статики и динамики.
Прирост производительности
Результат
до 100%
http://true-token.com
8. Разделение сцены
На сцене 32 спрайта
28 статичных на
background canvas
4 динамичных на
foreground canvas
http://true-token.com
9. Partial update
Обычное
Частичная очистка сцены
решение
Наше
Рендеринг только измененных спрайтов
решение
Прирост производительности
Результат
до 100%
http://true-token.com
11. «НЕТ» вращению спрайтов
Использование rotate canvas.
Обычное
решение Производительность неплохая, но можно
добиться лучшей
Наше
Прекэш поворотов спрайтов
решение
Прирост производительности
Результат
до 20%
http://true-token.com
12. «НЕТ» шрифтам
Использование встроенных средств canvas.
Обычное
решение Производительность неплохая, но можно
добиться лучшей
Наше
Рендеринг текста спрайтами
решение
Прирост производительности до 20%
Результат
в отдельных случаях
http://true-token.com
13. Полученные результаты
•
Рост FPS с 3-4 до 20-26
на устройствах класса
IPone 3G
•
Возможность
полноценного http://true-token.com