Unity使用Protobuf

1.下载Protobuf ProtoBuf

2.打开它并且编译 如果有报错下载相应的.net版本即可

这里默认是6.0.100 由于我本机是8.0.100所以我改了这个文件

3.编译后的文件复制到Unity Assets/Plugins下

4.写个测试的proto文件

5.然后使用protoc生成 这里实现了一个简单的bat批量生成 Protos Codes 和protoc.exe在一个目录下 双击gen.bat即可

csharp 复制代码
@echo off

rem 设置路径变量
set PROTOC_PATH="protoc.exe"
set PROTO_DIR="Protos"
set OUTPUT_DIR="Codes"

rem 检查目录是否存在
if not exist %PROTO_DIR% (
    echo Error: protos directory does not exist.
    exit /b
)

rem 创建输出目录
if not exist %OUTPUT_DIR% mkdir %OUTPUT_DIR%

rem 批量处理 .proto 文件
for %%f in (%PROTO_DIR%\*.proto) do (
    %PROTOC_PATH% --proto_path=%PROTO_DIR% --csharp_out=%OUTPUT_DIR% %%f
)

echo Code generation complete.

测试例子

csharp 复制代码
Monster monster = new Monster();
monster.Id = 100;
monster.Name = "虹魔教主";
byte[] buffer = monster.ToByteArray();

Monster ms = Monster.Parser.ParseFrom(buffer);

运行结果

具体的运行和设计根据项目而定吧 好像也没啥要写的了 哈哈哈

相关推荐
在路上看风景3 小时前
## 2.2 状态同步
unity
霜绛4 小时前
Unity:lua热更新(一)——AB包AssetBundle、Lua语法
笔记·学习·游戏·unity·lua
霜绛4 小时前
Unity:lua热更新(二)——Lua语法(续)
笔记·学习·unity·游戏引擎·lua
yi碗汤园5 小时前
【一文了解】C#反射
开发语言·unity·c#
HahaGiver6666 小时前
Unity Shader Graph 3D 实例 - 基础的模型贴图渲染
3d·unity·游戏程序·贴图·游戏美术
HahaGiver6666 小时前
Unity Shader Graph 3D 实例 - 一个简单的3D打印效果
3d·unity·游戏引擎
AA陈超6 小时前
ASC学习笔记0004:通知相关方能力规格已被修改
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
胖胖求游戏10 小时前
Unity热更新——AB包和Lua
unity·游戏引擎·lua
为你写首诗ge11 小时前
【Unity知识分享】Unity中获取Pico设备的序列号(SN码)
unity
B0URNE14 小时前
什么是虚拟现实(VR)?
unity·ue5·vr