Крашится игра на загрузке сцены. Help plz!

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

Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 13 янв 2020, 00:44

После публикации игры, некоторые пользователи начали жаловаться на то что игра крашится на загрузке сцены. Это происходит на небольшом количестве устройств и в основном это дешевые китайские телефоны и телефоны о которых я раньше никогда не слышал (BQ, Digma и тп). На остальных устройствах все работает как надо.
В проекте у меня есть загрузочная сцена в которой происходит загрузка остальных, и вот когда загрузка до ходила до 100% приложение вылетало либо просто зависало. Игра собрана под armv7 и arm64 с файлом .oob, разрешение на доступ к внутренней памяти пользователи перед этим всем дают.
Я даже купил один из этих девайсов чтобы посмотреть че происходит - xiaomi redmi go. В общем происходит ужасное 8-x - телефон полностью зависает и вообще ни на что не реагирует, даже на нажатие физических кнопок. Пока через несколько минут не закроет сам все. Логи по тегу Unity ничего толком не показывают, разве что по ним видно что выполнилось пару методов уже в следующей сцене (хотя перехода к ней вроде не случилось).
В проекте присутствуют: Firebase, Admob, Photon.
Вот логи, по которым у меня не получается толком понять что происходит, где ошибка. Единственное, что там заметил какой-то lowmemorykiller - значит ли это что дело в нехватке RAM?
https://pastebin.com/xxdWtb4A
код загрузки сцены
Синтаксис:
Используется csharp
        IEnumerator LoadScene(string name)
        {
            yield return StartCoroutine(GDPR_check());
            slider.gameObject.SetActive(true);
            yield return null;

            AsyncOperation asyncOperation = SceneManager.LoadSceneAsync(name, LoadSceneMode.Single);
            while (!asyncOperation.isDone)
            {
                float value = Mathf.Clamp01(asyncOperation.progress / .9f);
                slider.value = value;
                progressText.text = (value * 100).ToString("0") + "%";
                yield return null;
            }

        }
 


в общем прошу любых советов, помощи, т.к. не знаю вообще что делать
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение 1max1 13 янв 2020, 03:57

значит ли это что дело в нехватке RAM?

Возможно. Поставь галку на development build + autoconnect profiler и посмотри в профайлере что там с памятью.
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 13 янв 2020, 05:35

Изображение

Получается приложению для загрузки сцены необходимо >0.8 GB памяти?? :(
список текстур, материалов и тд - это то что есть вообще в проекте или ... неужели то, что сейчас в памяти? просто у меня текстур всего 380 на весь проект не наберется как мне кажется, да и они даже на диске столько места вряд ли занимают.
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение Tolking 13 янв 2020, 09:12

На диске в сжатом виде может и не занимают... Смотри что в консоли пишет перед повисанием.
Ковчег построил любитель, профессионалы построили Титаник.
Аватара пользователя
Tolking
Адепт
 
Сообщения: 2716
Зарегистрирован: 08 июн 2009, 18:22
Откуда: Тула

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 13 янв 2020, 14:49

лог:
https://pastebin.com/c13WhbVS

такс, ну значит дело 100% в памяти. может есть какие-то типичные или часто встречающиеся ошибки? я никогда еще не сталкивался просто с таким, и вообще не понимаю о каких 40к+ объектах идет речь? как это все оптимизировать и с чего вообще начать?
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение 1max1 13 янв 2020, 15:25

Одних текстур там на 200мб, стоит задумать об их "зашакаливании"))
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 13 янв 2020, 18:47

1max1 писал(а):Одних текстур там на 200мб, стоит задумать об их "зашакаливании"))


угу есть такое, с помощью этого прекрасного инструмента я наконец-то увидел что конкретно там находится, а находятся там все текстуры практически что есть в проекте, появились вопросы.

1. У меня на загружаемой сцене есть что-то вроде менеджера предметов, он содержит в себе список скриптабл обжектов, которые в себе хранят все характеристики оружия и в том числе информацию о скинах на оружие (чтобы игрок мог посмотреть в инвенторе на свои скинчики либо же просто какие-то характеристики в магазине). Ну соответственно в этих скриптабл обжектах есть ссылки на материалы этих самых скинов, я даже не мог подумать что они все возьмут и загрузят эти текстуры в оперативную память [curved_hands] . Это можно как-то исправить? либо изначально сам подход неправильный и так не делается, как тогда правильно это делать? сразу пришла мысль через Resources.Load загружать только тот скриптабл обжект что нужен в данный момент?
но тогда:
во-первых. везде написано что не стоит ничего класть в папку ресурсы.
во-вторых. все равно будут игроки с большим инвентарем и придется загрузить кучу этих СО и в рантайми это скорее всего вызовет неприятные фризы, и забьет снова всю память.

2. в общем как правильно обращаться с этим всем, чтобы в памяти не висели не используемые текстуры?

Изображение
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 13 янв 2020, 20:06

Видимо то, что мне нужно - это Adressables
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение DbIMok 13 янв 2020, 20:09

VladikDEV писал(а):во-первых. везде написано что не стоит ничего класть в папку ресурсы.

можно положить в Resources только ScriptableObject(ы), а то на что он ссылается в других папках.
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.7k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение Jarico 13 янв 2020, 21:21

VladikDEV писал(а):Видимо то, что мне нужно - это Adressables


Можно просто поделить бандлами ресурсы..

К примеру при загрузке сцен загружать ресурсы для неё а после загрузки сцены выгружать ресурсы (загруженные ресурсы в памяти будут существовать пока сцена не выгружена) и так проделывать для каждого префаба

В Addressables там ресурсы держатся в памяти даже после уничтожения префаба... (Возможно я не до конца разобрался с Addressables)
Github: _https://github.com/redheadgektor
Discord: Конь! Чаю!#9382 (сижу редко)
YouTube: _https://www.youtube.com/channel/UCPQ04Xpbbw2uGc1gsZtO3HQ
Telegram: _https://t.me/redheadgektor
Аватара пользователя
Jarico
Адепт
 
Сообщения: 1084
Зарегистрирован: 06 янв 2019, 17:37
Откуда: 0xDEAD
Skype: none
  • Сайт

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение mastersmit 14 янв 2020, 09:22

VladikDEV писал(а):во-первых. везде написано что не стоит ничего класть в папку ресурсы.

Почему?
Аватара пользователя
mastersmit
Старожил
 
Сообщения: 558
Зарегистрирован: 12 май 2014, 14:05
Откуда: Приморский край

Re: Крашится игра на загрузке сцены. Help plz!

Сообщение VladikDEV 14 янв 2020, 14:54

mastersmit писал(а):
VladikDEV писал(а):во-первых. везде написано что не стоит ничего класть в папку ресурсы.

Почему?


https://learn.unity.com/tutorial/assets-resources-and-assetbundles#5c7f8528edbc2a002053b5a7

п. 3.1
Изображение

я может перегнул конечно насчет "везде", но точно видел еще что и на этом форуме писали где-то что лучше не использовать.
VladikDEV
UNIт
 
Сообщения: 88
Зарегистрирован: 24 май 2016, 13:45
Откуда: Минск


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

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

Сейчас этот форум просматривают: Google [Bot] и гости: 12