Оптимизация 3D игры на мобильном устройстве

Раздел, посвящённый самому важному - скорости.

Оптимизация 3D игры на мобильном устройстве

Сообщение Киборг 27 окт 2017, 13:39

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

Моя игра:
Создал небольшую игру для Android на Unity. 3D-игра. Жанр: Tower Defence. Небольшая стратегия, похожая на ClashRoyale, но только 3D.

Контент игры:
5 3D моделей. 5 маленьких систем частиц. Вместо ландшафта затекстуированный куб.

Проблема:

Написал скрипт для выведения FPS.
Без всего контента (пустая сцена) FPS на мобильном устройстве выдаёт 25.
Поставив, к примеру, 3 модели и 3 системы частиц FPS выдаёт 18. А если начать играть, то выдаёт 12 и маскимум 15.
Моё устройство: Galaxy J5 (2016) SM-J510FN.

Пробовал на других устройствах. Такая же проблема. На тех, которые помощнее, FPS повывшалась, но на намного.

Взял все модели импортировал в Blender, уменьшил число полигонов. Помогло немного.
Просто я уже раньше играл 3D игры для Android, но почти на всех выдавало 25, при игре и максимум 30. А тут уже до 12 снизилось, хотя ничего там толком нет.
Какие советы можете дать по оптимизации 3D игры на моббильных устройствах?
Аватара пользователя
Киборг
UNец
 
Сообщения: 22
Зарегистрирован: 27 окт 2017, 13:14

Re: Оптимизация 3D игры на мобильном устройстве

Сообщение BFZ 27 окт 2017, 22:15

Если абсолютно пустая сцена выдает 25 фпс, то проблема или в счетчике фпс или в устройстве или все таки сцена не полностью пустая, как мне кажется.

А вообще на практике мне помогло поднять фпс отключение рилтайм теней, отключение АА(иногда и с ним может быть норм), также нужно отключить постэффекты типа блум, блюр, доф, амбиент оклюжн... вообще постэффекты жрут много на андроиде. Из постэффектов вполне можно использовать пожалуй коррекцию цвета, ну и фог вполне.
Еще надо убрать все источники света помимо директионал лайт, если есть. Выключить vsync, использовать диффуз, вертекс лит или анлит шейдеры. Рендер либо вертекс лит либо форвард.
Стараться не использовать текстуры с альфа каналом, и рендер в текстуру тоже почему-то не особо хорошо работает.

По поводу UI - могут напрягать эффекты типа оутлайн и шадоу, частое обновление текста, скролл рект лучше избегать, что-то еще...

Посмотрите на количество дроуколлов, если более 50 - могут начаться проблемы.
По скриптам особо не жрет ничего, но сборщик мусора может убить все.
Если тяжелая физика тоже могут появится проблемы, если простенькая(передвижение перса и т.п.) то все норм должно быть.
Партикли пока сам не пойму, в прошлых версия было все нормально, а в 2017 у меня с ними жуткие проблемы начались - попробуй вообще отключить на время.

Написал все что вспомнил, что-то может не быть правдой.

В целом все что сделает картинку красивее - будет тормозить.
BFZ
UNITрон
 
Сообщения: 252
Зарегистрирован: 28 июн 2017, 02:16

Re: Оптимизация 3D игры на мобильном устройстве

Сообщение Киборг 28 окт 2017, 14:20

Может быть. Но знаешь, я заметил ещё одну странную вещь. На некоторых устройствах моя игра выбивается. Со стороны это даже парадоксально.
Аватара пользователя
Киборг
UNец
 
Сообщения: 22
Зарегистрирован: 27 окт 2017, 13:14


Вернуться в Оптимизация

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1