HybridCLR热更新介绍

官方文档
参照视频

HybridCLR介绍

HybridCLR是一个特性完整、零成本、高性能、低内存的近乎完美的Unity全平台原生c#热更方案

HybridCLR与ToLua/XLua、ILRuntime有什么不同

在这里插入图片描述

什么是游戏热更新:有热更的游戏更新流程

在这里插入图片描述

游戏热更新的种类

资源热更新:主要通过AssetBundle来实现,在Unity编辑器内为游戏中所用到的资源指定AB包的名称和后缀,然后进行打包并上传服务器,待游戏运行时动态加载服务器上的AB资源包。

代码热更新
1.代码是一种文件,也是一种资源
2.Unity脚本资源以DLL文件的形式存在于磁盘上
3.Unity脚本代码打包以后放在磁盘什么位置?叫什么文件名
4.如何更新Unity脚本代码?

如何打包?

在打包设置面板“Player Setting”里,需要设置相应的值:
1.ScriptingBackend 选择编译方式“IL2CPP”,IL2CPP性能比Mono好
2.Target Architecttures里不勾选“ARM64”
在这里插入图片描述

两种方式打包以后的项目目录结构(IL2CPP方式、安卓)

  • = libmono.so :存储unity底层的一个库
  • Assembly-CSharp.dll:我们写的程序和脚本会形成这个dll
  • libilcpp.so:把Assembly-CSharp相关的程序和c#代码会形成一个c++的动态库,全部被链接到libilcpp.so
    在这里插入图片描述

IL2CPP方式脚本编译流程

  • IL2CPP做的改变由下图红色部分标明
  • 在得到中间语言IL后,使用IL2CPP将他们重新变回C++代码,然后再由各个平台的C++编译器直接编译成能执行的原生汇编代d代码
    在这里插入图片描述
  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值