Всем привет. Есть проблема с черным экраном на IOS / Android, уже писал по ней, но прошлое решение не прокатило.
Ситуация такая: самой первой грузится сцена, которая должна загрузить последний пройденный уровень из PlayerPrefs.
В этой сцене кроме камеры и простого загрузочного скрипта(который берет уровень из PlayerPrefs) больше ничего нет. Сцену загружаю методом SceneManager.LoadScene(lastScene) без асинхронной загрузки, сразу в Awake загрузочного скрипта. На загрузочной сцене камера solid black (но я убрал с нее тег MainCamera).
И у примерно 1 процента пользователей при загрузке игрового уровня камера остается черной или даже рендерит splash скрин с лого (пока не убрал тег MainCamera у камеры с загрузочной сцены, был только черный экран, после того как убрал тег, иногда вместо черного экрана остается картинка со splash screen). UI при всем этом отображается. Сам я такую ошибку поймать нигде не могу, но жалобы приходят.
В общем каким то образом камера остается со splash скрина или с моего кастомного загрузочного уровня с черной камерой. Кто знает в чем может быть дело и как исправить? Поможет ли асинхронная загрузка нужного уровня?
Можно попробовать избавиться от этой сцены а сделать неудаляемый объект, повесить на него канвас. На канвас кинуть черный фон и возможно текст типа "загрузка". На объекте висит синглтон, который асинхронно загружает сцены, и сам контролит включение / выключение канваса в зависимости от состояния загрузки сцен. Для такой схемы камера не нужна