UH2——Lua热更新解决方案

Lua热更新

在Unity内,AB包资源可以动态更新,而Lua代码脚本可以放进AB包内,随AB包更新
Unity中的Lua热更新的本质,就是为Unity提供Lua编程能力,让C#和Lua可以相互访问
这样,就可以通过热更新Lua脚本文件,使得Unity代码拥有热更新能力

本系列主要涉及:

  • Lua方案基础 —— Lua
  • Lua热更新方案 —— xLua
  • Lua热更新方案 —— toLua

Lua热更新开发方式

  • 纯Lua开发(即所有游戏主要逻辑全部使用Lua实现,C#脚本仅用于对接Lua脚本)

    • 热更新机动性强,甚至可以更换游戏玩法内核(真有你的.jpg)
    • 代码开发和运行效率差
  • 半C#,半Lua开发(核心逻辑C#开发,业务逻辑Lua开发)

    • 性能略好
    • 热更新机动性略差
  • xLua热补丁(纯C#开发,后期加入xLua热补丁,不建议)

    • 好处:不需要过度翻新代码,解决急需热更的问题
    • 坏处:破坏项目稳定性与整体性(史山上添加新的史.jpg)

xLua和toLua使用上对比

xLua在设计上更加完善,两种性能差异不大(toLua不适用于新项目)