Есть ли способ установить содержимое сцены в переменную? - PullRequest
0 голосов
/ 20 января 2020

У меня есть игра, в которой мне нужно сохранить сцену. Я делаю это, устанавливая сцену в переменную, к которой я могу получить доступ позже. Затем игрок переходит в главное меню, когда он готов.

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

Вот как я сделал переменную: Builder1 = SceneManager.GetActiveScene();

Любая помощь будет принята с благодарностью ( и да, я понимаю, что переменная, которую я сделал, вероятно, не хранит сцену так, как я хочу). Спасибо!

1 Ответ

2 голосов
/ 21 января 2020

Scene - это просто ссылка на объект Scene, а не на все местоположения / информацию GameObject в данный момент времени. Если информация в сцене еще не потеряна, желательно не закрывать сцену. Вместо этого взгляните на Аддитивная загрузка сцены . Вы можете произвольно загрузить новую сцену, переключить основную камеру на камеру новой сцены, а когда вы закончите, вы можете закрыть добавленную сцену и вернуть камеру в исходную сцену.

Если вы смотрите чтобы сохранить данные между загрузками игры, вам нужно будет рассмотреть сериализацию всех соответствующих данных в вашей сцене и создать класс данных для размещения всего этого.

...