如果ShellHelper还没添加,请先阅读这篇文章:C#运行Terminal
编译安装 3.4 版本protobuf
猫大对这个版本的protobuf进行了优化和修改,请不要自行安装其他版本的protobuf
git clone https://github.com/egametang/protobuf3-for-Unity-and-ILRuntime
cd protobuf3-for-Unity-and-ILRuntime/new/Protoc_3.4.0_src/cmake
cmake .
这时会报错,172行,找不到gmock目录,我们直接屏蔽掉这个逻辑
按照下面的输入顺序来install
cmake .
make
make install
来检验一下protobuf是不是真的已经安装好了
which protoc
/usr/local/bin/protoc
protoc.sh 工具编写
在ET/Unity目录下创建protoc.sh文件,写入如下内容
#!/bin/bash
protoc --csharp_out="./Assets/Scripts/Module/Message/" --proto_path="../Proto/" OuterMessage.proto
protoc --csharp_out="./Hotfix/Module/Message/" --proto_path="../Proto/" HotfixMessage.proto
echo finish
赋予执行权限
chmod +x protoc.sh
在Proto2CSEditor.cs文件中添加下面的代码
点击Tools下面的proto2cs执行成功后unity的console会输出如下内容
启动web资源服务器
这里的web资源服务器是用go写的,需要自行安装go环境:参考链接
需要创建一个进程持续做这件事,所以必须要启动Terminal来完成
在BuildHelper中添加如下代码
点击Tools下的web资源服务器后,Terminal已经在运行了,console也会输出这个window的ID
让我们来验证一下,在浏览器中输入 127.0.0.1:8080,我这里只打包了MacOS的包,所以只有一个,如果不知道Mac端如何运行ET可以参照我之前的文章:运行篇
如果需要写其他的工具,也可以参照上述用法,借助ShellHelper来实现,希望对你有所帮助