Unity Google Protobuf 使用教程

Unity Google Protobuf 使用教程

Google protobuf下载

在网上查阅无数资料,每个教程的使用方式都有不同,还有一些因为时间关系已经被淘汰,本文只整理我个人翻查资料后的使用总结。
Unity版本
2018.4.19
首先在GetHub下载protobuf
地址:https://github.com/protocolbuffers/protobuf
我们还需要安装protocol
https://github.com/protocolbuffers/protobuf/releases/tag/v3.11.4

使用Protocol编译出C#脚本

首先准备好我们需要编程成C#的proto文件
创建Txt文本后缀改成.proto即可
proto文件格式

syntax = “proto3”;

message SearchRequest {
string query = 1;
int32 page_number = 2;
int32 result_per_page = 3;
}

在这里插入图片描述

https://blog.csdn.net/yi_ya/article/details/40404231

在之前安装的Protocol工具目录下打开Cmd
protobuf/bin/
在这里插入图片描述
在所在目录的导航输入cmd就可以直接打开cmd导航到本路径
在这里插入图片描述
在cmd输入
在这里插入图片描述
–proto_path 指定要编译的.proto文件路径 (相对路径)
test.proto 路径下的proto文件名及后缀
–csharp_out 输出cs文件路径(相对路径)

更多proto语法,命令: https://developers.google.com/protocol-buffers/docs/proto3

这时候就可以在文件夹下看到生成的C#文件了
在这里插入图片描述
每次输入一次太麻烦?
当然有简便的方法,嘿嘿
打开proto文件所在文件夹(如果有特殊需求,则需要执行cd命令来打开对应的文件),在其中创建.bat文件(txt改后缀即可)

在其中填写
@echo off
for %%i in (*.proto) do (
protoc --csharp_out=./ %%i
rem 从这里往下都是注释,可忽略
echo From %%i To %%~ni.cs Successfully!
)
pause
在这里插入图片描述
在这里插入图片描述

https://blog.csdn.net/qq_15020543/article/details/87877353

导入到Unity中使用

如何在Unity中使用呢?其实很简单
下载好的Google protobuf 目录下的
在这里插入图片描述
Google.Protobuf文件夹整体放入Unity Assets/
还有自己生成的.cs文件一并导入到Unity中。

在这里插入图片描述
运行输出
在这里插入图片描述
到这里就使用成功啦!

最后关于序列化和反序列化

在这里插入图片描述

忘记在哪里找到的了~~~~~

结束,有哪里不对的地方还请指出~