找回密码
 立即注册
查看: 146|回复: 0

网络游戏开发协议:基于Protobuf的序列化与反序列化讲解

[复制链接]
发表于 2023-3-22 11:11 | 显示全部楼层 |阅读模式
本节給大家讲解的是网络游戏开发中的序列化与反序列化。当我们要存储/传送一个数据对象的数据的时候,我们要把这个数据对象实例编码成二进制数据,这样就可以把这些二进制进行存储与传送。当我们接收读取这些二进制的时候,我们有可以根据数据把对应的数据对象实例重建出来,这个过程,我们叫做序列化与反序列化。本节将从以下3点来详细的讲解基于Protobuf的序列化与反序列化。如下:
(1) 基于二进制数据序列化与反序列化的基本原理详解;
(2) Protobuf的设计架构与对应工具;
(3) Unity如何集成使用Protobuf;








Protobuf的设计架构与对应工具






Unity如何集成使用Protobuf
Unity项目如何使用Protobuf呢?按照下面的步骤来实现可以了。
(1) 内置C#的protobuf的runtime库代码到Unity项目,复制过来,直接放Unity就可以了。我一般会在Scripts下新建一个3rd文件夹来存放,如下图所示:


(2) 使用cmake源码编译protobuf,来生成protoc的编译工具,如果自己懒得编译,可直接到github上下载已经编译好的protoc。


(3) 在Unity Assets文件夹外面定义一个协议生成文件夹,专门用来定义协议文件.proto, 然后运行编译器生成 c#代码,然后再拷贝到项目Assets的指定代码目录下。






今天的分享就到这里了,欢迎了解更多网络游戏相关的开发知识。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-5-2 11:50 , Processed in 0.157264 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表