[Unity 网络]Unity Protobuf使用

一、下载protbuf-net的源码:protobuf-net
二、将该目录中protobuf-net目录下的全部C#源码拷贝到Unity3D中,直接使用源码而不是第三方dll。使用dll会在ios平台出问题;
三、此时在Unity中编译时,可能会报错说 unsafe不能使用;
四、采用以下方案能够解决: 在Assets目录下面新建 smcs.rsp文件,并在其中写入 -unsafe 字符串,先后不加空格;
五、从新启动unity,此时咱们能够发现该工程可以经过编译;
六、服务器能够编译成dll;ios

using (MemoryStream memoryStream = new MemoryStream(buffer))
    {
        ProtoBuf.Serializer.NonGeneric.Serialize(stream, body);
    }

    ProtoBody DeserializeProto(Stream stream, Type bodyType)
    {
        return ProtoBuf.Serializer.NonGeneric.Deserialize(bodyType, stream) as ProtoBody;
    }

参考:
网络协议
网络IO
消息 广播 同步
TCP/UDP IP
集群
负载均衡
分布式
多线程/线程池
开源网络通信框架/模型
阻塞/非阻塞/同步/异步
Proactor/Reactor/Actor Select/Poll/Epoll/Iocp/Kqueue
短链接和长链接
游戏安全
缓存
消息编码协议
Socket
Nagle/粘包/截断/TCP_NODELAY
AI/场景
分线/分地图git