Protobuf-net 和 Unity3D 类型
Posted
技术标签:
【中文标题】Protobuf-net 和 Unity3D 类型【英文标题】:Protobuf-net and Unity3D types 【发布时间】:2014-09-23 04:50:19 【问题描述】:我对 Unity3d 中的 protobuf-net 有疑问。 是否可以序列化 unity3d 类型:GameObject. 例如,我有一个 GameObject 类型的类属性,这个类是序列化/反序列化的?
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; // ???
对不起,我的英语..
【问题讨论】:
您能否提供将GameObject 分配为RunTimeTypeModel 的语法 【参考方案1】:你必须告诉 protobuf-net 你想序列化哪些类和属性。因为你不能用属性来装饰GameObject
,所以有不同的方法来做到这一点。
例如,您可以使用 RuntimeTypeModel.Default
执行此操作,这里是类 Point
的示例,它将属性 X
和 Y
设置为序列化。
RuntimeTypeModel.Default
.Add(typeof(System.Windows.Point), false).Add("X", "Y");
在这种情况下,您的 GameObject
必须有一个默认构造函数。
【讨论】:
能否提供分配GameObject
as RunTimeTypeModel 的语法以上是关于Protobuf-net 和 Unity3D 类型的主要内容,如果未能解决你的问题,请参考以下文章