Страница 1 из 1

GameObject в переменную

СообщениеДобавлено: 24 фев 2020, 22:11
suckduck
Всем привет!
Есть префаб и после его создания, в процессе игры он меняет свои параметры(положение, значения в скриптах и тд). Так вот можно ли сохранить измененный go в переменную типа GameObject и убрать его со сцены чтобы позже его создать? Я пытался засунуть его в переменную но туда попадает только ссылка на объект сцены и когда я его удаляю (destroy()), то создать его по ссылке уже не получается, потому что объект потерян, по сути мне нужно сохранить состояние объекта в переменной. Можно это сделать?

Re: GameObject в переменную

СообщениеДобавлено: 25 фев 2020, 01:53
Tolking
нет.
В реал тайме нет. в едиторе просто перетащить в иерархию и создать префаб.

Re: GameObject в переменную

СообщениеДобавлено: 25 фев 2020, 07:51
jetyb
Можно просто вместо удаления деактивировать объект и держать в памяти, а потом просто применить метод Object.Instantiate. Правда так объект сохранится только на время работы игры.

Re: GameObject в переменную

СообщениеДобавлено: 26 фев 2020, 20:30
suckduck
Спасибо, так и сделаю

Re: GameObject в переменную

СообщениеДобавлено: 04 мар 2020, 17:06
getAlex
Если нужно за пределами одного запуска, то можно сохранять его компоненты через json утилиту и дальше в файл. Потом инстансить и возвращать поля и состояние. Либо, если это одиночный и обязательный объект, то можно сейвить его состояние в скриптабл.