GameFramework 开发脚手架之 Network网络模块 工具链

630 阅读1分钟

项目 github地址

打开项目选GameLauncher场景,直接启动游戏。我用的是 Unity 2021.3.6f1 版本。但应该是2017之后的都支持,没有实测过。

参考

GameFramework 框架详解之 Network网络模块 工具链

老规矩,先看上面这篇文章,掌握大致的原理。

简单总结一下

  1. protobuf-net 和google的protobuf的区别,参考作者的文章在Unity之C#端使用protobuf
  2. protobuf-net的官网
  3. 生成工具的github地址,protogen

二次封装做了什么

  1. 简化了工具,组装bat批处理文件,调用protogen生成对应的 protobuf C#类文件。
  2. 自己需要扩展这个自动化过程的话可以自己添加。

使用

1698033506126.png

  1. 把 protobuf 文件放到 Assets/StreamingAssets/ProtoBuf/workspace/protos 下面。
  2. 在工具栏-》ProtoTools -》ExportProto,会在Assets/StreamingAssets/ProtoBuf/workspace/gen 生成对应的c#类文件 。
  3. 把生成的c#类文件拷贝到项目中使用。

1698028267628.png

目录结构-编辑器

1698040310359.png

  1. ProtoCfg,主要是一些目录的位置。
  2. ProtoToolsMenus,主要是拼接批处理文件的逻辑。

目录结构-工作目录

image.png

  1. protos 是protobuf文件。
  2. gen是根据protobuf文件生成的C#类文件。
  3. proto2cs.bat是组装出来的批处理文件,每次都会重新生成,然后执行这个批处理文件,在gen目录生成最终的C#类文件。