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);

运行结果

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

相关推荐
虾球xz38 分钟前
游戏引擎学习第217天
c++·学习·游戏引擎
Lareina~1 小时前
【元表 vs 元方法】
unity·lua
虾球xz4 小时前
游戏引擎学习第215天
网络·学习·游戏引擎
Clank的游戏栈6 小时前
Unity IL2CPP内存泄漏追踪方案(基于Memory Profiler)技术详解
unity·游戏引擎
归海_一刀8 小时前
Unity跨平台输入系统
unity·游戏引擎·输入系统
虾球xz8 小时前
游戏引擎学习第197天
java·学习·游戏引擎
向宇it8 小时前
【unity游戏开发入门到精通——动画篇】Animator反向动力学(IK)
开发语言·unity·c#·编辑器·游戏引擎
虾球xz9 小时前
游戏引擎学习第214天
学习·游戏引擎
傻欣11 小时前
第八天 开始Unity Shader的学习之Blinn-Phong光照模型
学习·unity·游戏引擎
Liam_Lsc1 天前
Unity 实现伤害跳字
unity·游戏引擎