Unity集成Protobuf

  1. 下载protobuf 源码 mgravell/protobuf-net
  2. 复制protobuf-net-master\src\protobuf-net 目录到Assert下的任意目录
  3. Assert目录下创建smcs.rsp和gmcs.rsp 文件内容都是:-unsafe (可用文本文件创建然后改名,后缀为rsp)
  4. 打开protobuf-net-master\src下的protobuf-net.sln 编译生成ProtoGen 可执行文件(使用2015打开报错,可将protobuf-net-master\assorted\ProtoGen复制替换protobuf-net-master\src下的同名目录,2015可打开,修改该项目下的引用protobuf-net-master\assorted\protobuf-net.Enyim\packages\protobuf-net.2.0.0.602\lib\net20下的protobuf.dll)
  5. 测试脚本,将下面脚本存为generator.bat复制到protogen.exe相同目录,创建protobuf目录后双击执行,成功会在protobuf目录生成descriptor.cs源文件
  6. 编写自动化脚本,脚本目录请根据项目情况而定
  7. 序列化

    测试实例:
  8. 反序列化

    测试实例

为了便于重用,可将源文件放到自定义类库,请参考:Unity开发类库封装与调用