unity xlua热更新总结

前言:

xLua是Unity3D下Lua编程解决方案,自2016年初推广以来,已经应用于十多款腾讯自研游戏,因其良好性能、易用性、扩展性而广受好评。现在,腾讯已经将xLua开源到GitHub。

2016年12月末,xLua刚刚实现新的突破:全平台支持用Lua修复C#代码bug。

目前Unity下的Lua热更新方案大多都是要求要热更新的部分一开始就要用Lua语言实现,不足之处在于:

1、接入成本高,有的项目已经用C#写完了,这时要接入需要把需要热更的地方用Lua重新实现;

2、即使一开始就接入了,也存在同时用两种语言开发难度较大的问题;

3、Lua性能不如C#;

xLua热补丁技术支持在运行时把一个C#实现(函数,操作符,属性,事件,或者整个类)替换成Lua实现,意味着你可以:

1、平时用C#开发;

2、运行也是C#,性能秒杀Lua;

3、有bug的地方下发个Lua脚本fix了,下次整体更新时可以把Lua的实现换回正确的C#实现,更新时甚至可以做到不重启游戏;

这个新特性iOS,Android,Window,Mac都测试通过了,目前在做一些易用性优化。

个人对XLua看法

  1. 简洁易用,容易上手
  2. 可扩展性高,添加自定义的CS模块或者第三方插件非常方便
  3. 大厂维护,可靠
  4. 特色:HotFix 
    关于这个HotFix是其他热更lua框架所不具备的,也是他最大的优势和特色之一,原理就是通过特性标记然后在IL逻辑层判断修改逻辑,使程序支持热更的lua逻辑代码而不是走之前的C#逻辑

XLua文档:

(必看)xlua教程:https://gitee.com/OcxnO/XLua/blob/master/Assets/XLua/Doc/XLua%E6%95%99%E7%A8%8B.md

(必看)xlua的配置:https://gitee.com/OcxnO/XLua/blob/master/Assets/XLua/Doc/configure.md

   xlua的API:https://gitee.com/OcxnO/XLua/blob/master/Assets/XLua/Doc/XLua_API.md

   热补丁操作指南:https://gitee.com/OcxnO/XLua/blob/master/Assets/XLua/Doc/hotfix.md

  常见问题解答:https://gitee.com/OcxnO/XLua/blob/master/Assets/XLua/Doc/faq.md

 

你可能感兴趣的:(unity)