Unity: игровые объекты в сцене загружаются постепенно, а не одновременно - PullRequest
0 голосов
/ 13 марта 2020

Я использую Unity в своем приложении Android. Когда приложение открывается, я показываю пользовательские данные в сцене Unity. Пользовательские данные содержат тексты и изображения.

Чтобы загрузить эти данные в сцену, я совершаю множество UnityPlayer.UnitySendMessage(GameObject,Function,Params) вызовов для многих C# скриптов в Unity из Android. Каждый из этих вызовов выполняет определенную задачу c, такую ​​как загрузка изображения, создание текста, применение шрифта текста и т. Д. c.

Проблема заключается в том, что загрузка этих данных сейчас выглядит добавочной (если это правильное слово). Таким образом, текст виден первым, а через доли секунды изображение показывает. Некоторые текстовые эффекты показаны позже. Это выглядит ужасно.

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

Редактировать: Вкл. Android сторона, это упрощенный пример того, как я делаю вызовы

//I call these methods one after the other which make Unity calls
createText(textList)
createImages(imageList)

private fun createText(texts: List<Text>) {
    for (text in texts) {
        UnityPlayer.UnitySendMessage("Text", "CreateText", text.name+","+text.fontSize+","+text.bold)
    }
}

private fun createImages(images: List<Image>) {
    for (image in images) {
        UnityPlayer.UnitySendMessage("Image", "CreateImage", image.name+","+image.url+","+image.size)
    }
}

На Unity у меня есть реализации для одного и того же в различных C# сценариях. Стоит отметить, и мой недостаток в том, что я не упомянул, что изображения загружаются с URL-адреса, который передается в Unity, как описано выше. Вот почему возникает задержка в изображениях, но я в порядке с этим, если все остальное появляется одновременно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...