Сохранение игры в Unity. Как сохранять ссылочные типы, а потом загружать их?

Например. Мне нужно сохранить все объекты на сцене, но у каждого объекта есть скрипт с полем.

public GameObject randomObject;

В котором может храниться любой объект на сцене. Который так же будет загружаться и иметь ссылки.

Каким способом мне сохранять связи между объектами при сохранении и загрузке? То что мне пришло в голову, так это хранить id для каждого объекта на сцене. Да и вообще в любом классе придётся хранить какой то порядковый номер. А после загрузки игры найти объекты по id.

Есть ли лучшее решение? Или ссылки на статьи по этой теме.


Я не могу сделать вот так (не могу сохранить ссылки на экземпляры классов в json)

    public class MyClass
    {
        public MyClass myClass;
    }

    class Program
    {
        static void Main(string[] args)
        {
            var myClass_1 = new MyClass();
            var myClass_2 = new MyClass();

            myClass_1.myClass = myClass_2;
            myClass_2.myClass = myClass_1;

            string json = JsonConvert.SerializeObject(myClass_1);
            Console.WriteLine(json);
            Console.ReadLine();
        }
    }

Ответы (0 шт):