Переключаться между сценами, но сохранять позицию игрока, когда возвращается?

Моя игра будет переключаться между двумя сценами: сценой A и сценой B;
сцена A — это мир, в котором герой может ходить и запускать битвы;
сцена B — это сцена битвы;

когда битва закончилась, я хочу вернуться к сцене А, и герой должен быть в том положении, в котором он запускает битвы. Поэтому мне нужно сохранить сцену A перед загрузкой сцены B;

Я попробовал API LoadSceneMode.Additive; Но он просто используется для микширования одной сцены с текущими загруженными сценами.

Не могли бы вы помочь мне, пожалуйста?


person bazysong    schedule 02.03.2016    source источник
comment
общий совет для новых разработчиков Unity: просто никогда и ни при каких обстоятельствах не используйте функцию «Добавление». Честно говоря, это совершенно не имеет значения в 99,99% случаев; это просто одна из тех запутанных вещей в Unity.   -  person Fattie    schedule 26.03.2017


Ответы (1)


Во-первых, НЕ используйте «добавку». Просто используйте обычную загрузку сцены.

Во-вторых, у вас есть проблема с «запоминанием», где был парень, когда загружается сцена А.

Ваш самый простой способ начать работу. Узнайте о PlayerPrefs.

Перед тем, как закончить сцену, сохраните позицию героя. Когда вы загружаете сцену А, получите позицию героя.

В качестве альтернативы вы можете использовать один static class в качестве своего рода глобального для отслеживания информации. Но для этого вам нужно научиться писать такой код.

Имейте в виду, что то, что вы делаете, не так просто — Unity намного сложнее, чем написано на коробке.

Я рекомендую вам в первую очередь освоить PlayerPrefs, потому что вам все равно придется использовать его все время.

person Fattie    schedule 02.03.2016
comment
привет @bazysong .. помогло?? - person Fattie; 02.03.2016
comment
действительно помогает, спасибо! Я прочитаю какой-нибудь документ о PlayerPrefs. - person bazysong; 02.03.2016