Сериализация классов и структур в Unity
Сериализация представляет собой процесс автоматического преобразования структур данных либо состояний объекта в иной формат. Когда используем этот термин относительно Unity, мы подразумеваем упрощение хранения данных и их реконструкцию. Это один из приемов повышения продуктивности разработки.
Итак, структуру и класс мы можем пометить как сериализуемые. Для этого потребуется указать
В чем вообще плюс этого подхода? На самом деле, преимущество в том, что предоставляется прямой доступ к соответствующим свойствам посредством инспектора, что, в свою очередь, весьма удобно в случае применения массивов и списков.
Ниже -- перечень характеристик игрока в инспекторе свойств движка Unity:
Вне зависимости от того, каким именно будет ваш проект, в нем наверняка будут повторяющиеся структуры: к примеру, предметы, задания и даже диалоги — реализовать их можно в виде сериализованных структур либо классов, а это даст возможность легко поменять перечень их значений в инспекторе.
То же самое вы сможете сделать и для перечислений (их применение повысит безопасность типов), а также и для более сложных конструкций — к примеру, тех же спрайтов. Оба случая продемонстрированы на примере ниже.
Перечень характеристик игрока с перечислениями и спрайтами в инспекторе Unity:
Таким образом, если применять перечисление в сериализованной структуре, то вы получите его идентификаторы в инспекторе Unity в удобном выпадающем списке, что не может не радовать, ведь больше не потребуется запоминать строки.
По материалам статьи "Four Techniques for Faster Unity 3D Development".