(五)Lua开篇

unity3D里为什么要使用lua :

  Unity3D是个好引擎,但有一个缺憾是iOS下无法热更新。如果能用Lua写Unity3D的游戏逻辑,那就可以绕过苹果审核随意更新了。
  有一种方法是用C#的基础上实现Lua。这个网上可以查到有几种版本。但这种运行效率没保障,据说比一般的Lua要慢10倍。还有一种方法是使用C版本的Lua,使用Unity3D Pro 的Plugin 功能,用PInvoke 让C# 与原生的Lua 引擎交互。
  Unity3D 工程里的 C# 部分,应该尽量的少而且与游戏内容无关。 因为在iOS平台上它是没有办法热更新的。 那么 C# 代码的内容应该包含:
1. 游戏开始时启动Lua。
2. 游戏崩溃时上传debug信息、修复客户端。
3. 一个记录数据用的Monobehaviour组件 ,仅仅用来让 Prefeb 能记录一些附加信息,方便编辑。
4. 一系列回调用的Monobehaviour组件,让Lua 可以注册一些 Update 之类的事件回调。
除了这些C# 程序之外,所有其它的游戏内容都能动态更新。 理论上一个游戏一热更新,可以变成任意的另一个游戏
5、 热更新是一种各大手游等众多App常用的更新方式。简单来说,就是在用户通过App Store下载App之后,打开App时遇到的即时更新。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值