2014-09-23 2 views
2

У меня есть вопрос о protobuf-net в Unity3d. Можно ли сериализовать типы unique3d: GameObject. Пример: у меня есть свойство класса с типом GameObject, этот класс serializedd/deserialized?Protobuf-net и Unity3D типы

using ProtoBuf; 
using UnityEngine; 
... 

[ProtoContract] 
public class Example 
{ 
    [ProtoMember(1)] 
    public int Count {get;set;} 
    [ProtoMember(2)] 
    public string Name {get;set;} 
    [ProtoMember(3)] 
    public GameObject MyGameObject {get;set;} // ??? 
} 

К сожалению, мой английский ..

+0

Не могли бы вы предоставить синтаксис для назначенияGameObjectas RunTimeTypeModel – djkp

ответ

1

Вы должны сказать Protobuf-сеть, какие классы и свойства вы хотите сериализовать. Поскольку вы не можете украсить GameObject атрибутами, для этого есть разные способы.

Вы можете сделать это, например, с RuntimeTypeModel.Default, вот пример для класса Point, он задает свойства X и Y сериализовать.

RuntimeTypeModel.Default 
     .Add(typeof(System.Windows.Point), false).Add("X", "Y"); 

В этом случае у вашего GameObject должен быть конструктор по умолчанию.

+0

Не могли бы вы предоставить синтаксис для назначения'GameObject'а RunTimeTypeModel – djkp

Смежные вопросы