@vovka_losira

Почему не работает сцена после перезагрузки?

Перезагружаю сцену :
public void Restart()
    {
        SceneManager.UnloadSceneAsync("game");
        SceneManager.LoadSceneAsync("menu");
    }


После этого сцена замораживается. Она перезапускается, но не работает. Из-за чего такое может быть? Как решить проблему?
  • Вопрос задан
  • 24 просмотра
Пригласить эксперта
Ответы на вопрос 1
Как-то так, читай комменты в коде и всё поймёшь:
void Update()
    {
        // Если нажат пробел — запускаем сопрограмму
        if (Input.GetKeyDown(KeyCode.Space))
        {
            // Coroutine при фоновой загрузке обязателен
            StartCoroutine(Restart());
        }
    }

    IEnumerator Restart()
    {
        // Начинаем загрузку сцены
        AsyncOperation asyncLoad = SceneManager.LoadSceneAsync("menu");

        // Ждём, пока сцена полностью загрузится
        while (!asyncLoad.isDone)
        {
            // Прерываемся, раз ещё не загружено
            yield return null;
        }
        // Выгрузить единственную открытую сцену нельзя
        // Сперва загружаем, а потом выгружаем
        SceneManager.UnloadSceneAsync("game");
    }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
mpulse Москва
от 80 000 до 140 000 ₽
Stark Games Минск
До 3 500 $
Frostgate studio Новосибирск
от 60 000 до 100 000 ₽
29 сент. 2020, в 01:42
5000 руб./за проект
28 сент. 2020, в 22:46
1500 руб./за проект
28 сент. 2020, в 22:42
5000 руб./за проект