@Igor_1230
Иван

Почему не работает сериализация Vector3 и подобного в юнити?

Есть класс, объект которого мне нужно сохранить в бинарный файл. У класса поля типа float (сохраняет нормально), и типы Vector3, Quaterion, Matrix4x4 и тд (их не сохраняет) пишет ошибку: "SerializationException: Type 'UnityEngine.Vector3' in Assembly 'UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable."
Вот так сохраняю:
FileStream fs = new FileStream("DataFile.dat", FileMode.Create);
Binary.BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(fs, obj);
fs.Close();
  • Вопрос задан
  • 184 просмотра
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Там же чёрным по белому написано
is not marked as serializable

То есть, если на пальцах, класс не помечен [Serializable]
Хотя сам юнити сериализует их в yaml, наверное у него кастомный сериализатор для этих типов.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы