Protocol Buffers (通常简称为protobuf) 是Google开发的一种格式,这种格式与开发语言无关、与运行平台无关,用于序列化结构数据,并且很容易扩展。这种格式可以用于通信协议、数据存储等等。类似于json或者xml,但是protobuf更小、更快、更简单。

要在unity中使用protobuf,首先在github上把项目下载下来,然后手写一个proto格式的脚本,在protobuf的数据类型对应如下c#数据类型

图一

然后首先手写一个proto格式的脚本,如下

图二

写好之后,把他编译成csharp格式,编译工具可以在github上下载,地址

protocolbuffers/protobuf​github.com

选择对应版本就可以了,如我用的是windows,那就下载win64版本,解压,然后把里面的include文件夹放到bin下,把写好的proto脚本也放到bin下,运行win powershell或者cmd都可以,(在当前位置快速打开powershell可以按住shift,在点击鼠标右键),输入

图三
图四

就可以生成对应的csharp文件了,然后把文件导入Unity工程,会发现大量报错,这是因为里面引用了Google类库文件,而工程里面没有导致的,可以直接下载Google源码解决(上面的链接),下载对应的csharp的类库,放入工程即可,如图六把google.protobuf放入Unity。

图五
图六

如果你的Unity .net运行时为3.5,那需要切换成4.0,或者下载protobuf的非官方版。

然后自定义脚本进行写入和解析:

然后就是自己写Socket,封包,拆包就可以了,这个不再protobuf之内,就不举例了

unity项目源码_在Unity中使用protobuf相关推荐

  1. java web开源项目源码_超赞!推荐一个专注于Java后端源码分析的Github项目!

    大家好,最近有小伙伴们建议我把源码分析文章及源码分析项目(带注释版)放到github上,这样小伙伴们就可以把带中文注释的源码项目下载到自己本地电脑,结合源码分析文章自己本地调试,总之对于学习开源项目源 ...

  2. java web开源项目源码_适合Java新手的开源项目集合——在 GitHub 学编程

    作者:HelloGitHub-老荀 当今互联网份额最大的编程语言是哪一个?是 Java!这两年一直有听说 Java 要不行了.在走下坡路了.没错,Java 的确在走下坡路,未来的事情的确不好说,但是瘦 ...

  3. 安卓实训项目源码_综合性项目:在线学习考试系统

    此项目是本人耗费大量的业余时间独立开发,制作该开源项目的原因: 巩固Java8.Spring Boot.MyBatis等后端方面的知识 巩固HTML.JavaScript.Vue.ElementUI等 ...

  4. jquery项目源码_第一个jQuery程序

    1.配置jQuery环境 1.1获取jQuery最新版本 进入jQuery的官方网址 http://jquery.com ,下载最新的jQuery库. 1.2 jQuery库类型说明 目前jQuery ...

  5. flask项目源码_源码解读:Flask上下文与代理模式

    在上一节中,我跟大家一起深入了解了一下Python的「上下文管理器 」.而今天呢,还是和上下文有关的话题.只不过这里的上下文和上一节的内容有点不一样,上下文管理器是管理代码块级别的上下文,而今天要讲的 ...

  6. flash拼图游戏源码_在Flash中构建视频拼图游戏

    flash拼图游戏源码 Suppose you could convince your visitors to give their undivided attention to your compa ...

  7. delphi精品项目源码_项目是如何死掉的?太过真实!

    1.不可达到的目标 2.无法执行的计划 3.贫乏的项目资源 4.失控的变更管理 5.缺乏态度及立场 6.无能的团队建设 7.奖罚不清 8.缺乏风险管理 9.经验不足的乙方PM 10.经验不足的甲方PM ...

  8. android studio 项目源码_这个标星 2.3k+ 的项目带你 Android 源码分析从入门到放弃...

    上次写了一篇 Android 开发者的福利,介绍几款看源码的工具 ,这篇文章主要介绍了三款看 Android 源码的工具,后台有很多同学留言问,有没有分析源码的. 分析源码的文章也很多,但大多数文章不 ...

  9. promise 浏览器实现的源码_【更新中】浏览器相关的汇总

    大家好,我是lz!这次是一篇记录文(总结的文章会持续更新,直到这章节结束,大家也可以关注我一起学习) 接下来会把浏览器,http 网络相关的内容进行一个汇总.这也是我面试最薄弱的一块. 1.  先从熟 ...

最新文章

  1. data类型的Url格式及Base64编码:把小数据直接嵌入到Url中
  2. linux获取最高权限并取消_通过安卓渗透WIN7获取系统最高权限
  3. 动态规划训练25 [Food Delivery ZOJ - 3469 ]好题
  4. pycharm断点调试django
  5. c语言声明第一个学生的成绩,C语言课程设计报告--学生成绩管理系统
  6. MySQL可视化管理工具之SQLyog的简介以及使用方法
  7. 马克思主义基本原理概论复习资料
  8. CAD测量图纸时数据显示不出来怎么办?
  9. CROSS APPLY和OUTER APPLY的区别
  10. Linux 字体存放位置及字体安装
  11. 互联网+废品回收项目可行性分析报告
  12. 2022年G2电站锅炉司炉操作证考试题库及答案
  13. 一起白piao网页学知识吧
  14. css元素旋转原点,使用transform-origin属性改变元素变换原点
  15. 淘宝、天猫产品参数、基本信息API
  16. 客快物流大数据项目学习框架
  17. 计算机文件打开方式这么还原,dat文件还原默认打开方式如何设置?还原默认打开方式的详细步骤...
  18. JedisConnectionException: java.net.SocketException: Broken pipe (Write failed)
  19. oracle java培训机构
  20. 一文整理总结常见Java面试题系列——Java集合篇(2022最新版)

热门文章

  1. html5斐波那契数列,经典的斐波那契数列与arguments.callee
  2. shell 死循环if判断_运维小技巧(2):shell函数
  3. 微信内测版抢先体验,可发 4K 无损视频
  4. 全网最火爆的“人生重开模拟器”,快来!
  5. 追梦童年,80后记忆中的Gameboy,教你怎么用模拟器去重温旧梦!
  6. Payment Spring Boot 1.0.2.RELEASE 发布,接入微信支付分、先享卡功能
  7. kubernetes,什么鬼?
  8. 国内 Java 开发者必备的两个装备,你配置上了么?
  9. 用了这个 IDE 插件,5分钟解决前后端联调!
  10. 如何使用Mybatis的拦截器实现数据加密与解密