Я играю в танковую битву, которая случайным образом генерирует новые уровни после каждого раунда. В моем игровом менеджере я пытаюсь начать раунд с аддитивно загруженной сцены из индекса случайного диапазона, а затем закончить выгрузкой сцены и последующей загрузкой в новой случайной сцене. Однако каждая попытка, которую я делаю, приводит к той или иной форме ошибки.
Меня постоянно направляли в LoadLevelAsync, но мне кажется, что это просто дает мне больше вопросов, на которые никто, похоже, не отвечает.
Вот как это в настоящее время выложено:
//Load random level scene
int index = Random.Range(2, 4);
SceneManager.LoadSceneAsync(index, LoadSceneMode.Additive);
Debug.Log("SceneLoaded");
//Unload current scene and load new random level scene
int index = Random.Range(2, 4);
SceneManager.UnloadSceneAsync(index);
SceneManager.LoadSceneAsync(index, LoadSceneMode.Additive);
Debug.Log("SceneLoaded");
С учетом того, как установлен этот код, кажется, что он работает нормально, если новый случайный уровень является повторением ранее использованного уровня, но если вызываемый уровень отличается, то он выдает ошибку и вылетает.
Любой совет о том, куда идти отсюда, высоко ценится. Я ни в коем случае не программист, поэтому необходимы простые, но подробные объяснения. Спасибо.