Вопросы по оптимизации

Общие вопросы о Unity3D

Вопросы по оптимизации

Сообщение Febz 12 июл 2017, 20:10

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

- создать несколько .unity-сцен и в каждой вручную настроить параметры и врагов (тогда в сцене будут только нужные вражеские префабы)
- или же объединить сцены в одну, но со скриптом, который, в зависимости от выбранного уровня, сам настраивает параметры и врагов (но тогда в сцене будут висеть неиспользуемые префабы для остальных сцен)
Febz
UNец
 
Сообщения: 32
Зарегистрирован: 20 дек 2014, 18:02

Re: Вопросы по оптимизации

Сообщение eonyanov 13 июл 2017, 10:28

Думаю, во втором варианте размер апк меньше будет, так как сами файлы сцен какое-то место должны занимать.
С точки зрения оптимизации, без разницы. Тут уже зависит от того, как настроена конкретная сцена(-ы).

По второму варианту не совсем понял, почему на сцене должны висеть неиспользуемые префабы?
Создаешь в управляющем скрипте переменные под все префабы врагов, в редакторе связываешь эти переменные с префабами из проекта (только не со сцены, а именно напрямую из проекта их перетаскиваешь).
Когда игру запускаешь, инстанциируешь объекты только нужных врагов и задаешь им параметры согласно уровню. Для задания настроек врага согласно уровню тебе помогут файлы настроек - ScriptableObject.
Glow Asteroids Game
Happy Chair
Аватара пользователя
eonyanov
UNITрон
 
Сообщения: 298
Зарегистрирован: 22 авг 2014, 10:28

Re: Вопросы по оптимизации

Сообщение waruiyume 13 июл 2017, 10:55

Думаю, во втором варианте размер апк меньше будет, так как сами файлы сцен какое-то место должны занимать.

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

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

Febz, делайте как удобней, а оптимизировать начинайте только если появится необходимость.
Если загружать ресурсы через Resorces.Load, они не будут висеть мёртвым грузом, пока не используются, но это дополнительный геморрой.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: Вопросы по оптимизации

Сообщение Febz 13 июл 2017, 12:31

waruiyume
Я так чую, в будущем мне еще предстоит скрупулезное выковыривание каждого лишнего килобайтика из билда, ибо на данный момент создана лишь 1/10 контента, а размер апк уже настораживает.. Пара сотен кб в таком случае не будет лишней, тем более, что подобных сцен планируется 50-80 штук.

Сейчас взял свою игровую сцену (файл .unity весит 210 кб), дублировал её, и добавил в проект. В итоге у полученного apk размер вырос лишь на 20-30 кб..

eonyanov
Спасибо за наводку, про ScriptableObject вообще не знал.
Febz
UNец
 
Сообщения: 32
Зарегистрирован: 20 дек 2014, 18:02

Re: Вопросы по оптимизации

Сообщение eonyanov 13 июл 2017, 19:12

Еще для уменьшения размера APK в PlayerSettings можно у параметра DeviceFilter оставить только ARMv7. Обладателей девайсов x86 не так много, и ими можно пренебречь =)
Glow Asteroids Game
Happy Chair
Аватара пользователя
eonyanov
UNITрон
 
Сообщения: 298
Зарегистрирован: 22 авг 2014, 10:28


Вернуться в Общие вопросы

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

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