Unreal Engine 4
http://uengine.ru/forum/

Сохранение объектов между картами.
http://uengine.ru/forum/viewtopic.php?f=3&t=40526
Страница 1 из 1

Автор:  Monolag [ 14 авг 2019, 23:49 ]
Заголовок сообщения:  Сохранение объектов между картами.

Здравствуйте. Столкнулся с проблемой:
Пока объект не выгружен, сохраняется все прекрасно. Как только объект выгрузился и я пытаюсь добавить к уже имеющимся сохранениям добавить новые объекты из другой части карты, которые до этого были выгружены, у меня ссылки на первые, выгруженные, объекты бьются.
Сохраняю я предметы, с которыми можно взаимодействовать (к примеру сундук). Сохраняю я насколько его значений: был он уничтожен, сколько вещей взяли, был ли он заспавнен и т.п.
Сохраняю и загружаю информацию используя структуры, в которых у меня: ссылка на объект и переменные объекта, которые нужно сохранить. Как вы поступаете в такой ситуации?
Подумал, что можно объекты хранить на другом стриминге и не выгружать их а скрывать, но это очень много геморроя и очень хочу найти решение с выгрузкой.

Автор:  KakaIIIka [ 24 авг 2019, 13:01 ]
Заголовок сообщения: 

Я вижу только один способ,записывать состояние сундука на диск. При инициализации сундука подгружать его состояние. Смотри уроки по сейв гейм.

Автор:  KakaIIIka [ 24 авг 2019, 13:03 ]
Заголовок сообщения: 

Опять же если это стрим левел то нужно эти состояния куда то сохранять где они выгружаться не будут и при подгрузке обращаться к ним. как то так

Автор:  Monolag [ 30 окт 2019, 19:04 ]
Заголовок сообщения: 

Проблема-то была в сохранении целостности ссылок, когда предметов уже в памяти нет.
Уроки по сохранениям я давно пережил, такая проблема в них точно не раскрывалась
Все оказалось намного проще:
Нужно генерировать сейв слот, исходя из названия карты, тогда никакие референсы ломаться не будут.

Автор:  jeka3d [ 28 фев 2020, 03:25 ]
Заголовок сообщения: 

если без сейва то - записывать состояние сундука в структуру внутри гейминстанса (она не сбрасывается при смене карт) и спокойно считывать её от туда когда надо

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/