Перейти к содержимому
Журнал

Оптимизация графики для браузеров: почему анимация тормозила на старых устройствах

admin

При выпуске проекта в категории игры на внимание мы столкнулись с падением частоты кадров до ЦИФРА FPS на слабых компьютерах и мобильных устройствах. Проблема заключалась в использовании слишком больших текстурных atlas-файлов размером 4096×4096 pixels и непрерывном пересчете теней в реальном времени.

Поиск узкого места в производительности

Профилирование через встроенные инструменты разработчика в Chrome показало, что основной объем памяти занимали неоптимизированные эффекты частиц. Для браузерные игры критически важно удерживать размер первого загружаемого бандла в пределах ЦИФРА мегабайт, иначе пользователь закрывает страницу, не дождавшись загрузки.

Мы провели полную переработку визуально части за ФАКТ дней:

  1. Уменьшили размер всех текстурных карт до 2048×2048 pixels.
  2. Заменили процедурные тени на заранее отрисованные подложки.
  3. Сократили количество одновременно отображаемых элементов на экране с ЦИФРА до ЦИФРА штук.

Реальные показатели после оптимизации

Технический компромисс позволил снизить потребление оперативной памяти на ЦИФРА% и повысить частоту кадров до стабильных 60 FPS. Мы потеряли часть сложных объемных эффектов, но сохранили плавность откликов, что напрямую повлияло на время сессии. Сейчас все наши игры в браузере запускаются за ЦИФРА секунд даже при слабом интернет-соединении.