Lua是什么?
Lua是一个精悍小巧的编程语言,可以直接使用解析器进行解析,不需要编译的过程。大多数功能都可以使用Lua完成,但是Lua的解析过程效率较慢,一般将经常更改的界面等资源使用Lua语言实现。
Unity为什么使用Lua?
热更新:
热更新就是可以再不重新下载客户端的前提下,更新游戏的内容(资源更新,逻辑更新)
游戏上线后,如果需要更换UI界面,或者游戏的逻辑,如果不使用热更新,就需要重新打包、上线,让玩家重新下载(浪费流量时间、体验不好、玩家流失)
C#编写的程序在运行之前需要进行编译,编译Dll的过程需要在开发环境下进行,所以当使用C#编写的游戏逻辑发生改变后,我们需要重新进行编译,打包。
C#反射技术实现热更新(麻烦、IOS不支持反射)
unity 提供资源热更新技术,AssetBundle
可以将lua脚本当做资源进行热更新,将Lua脚本资源更新到客户端
在客户端编写Lua解析器,通过解析器解析Lua脚本,将需要更新的代码使用Lua实现
Lua解析技术有哪些?
uLua
nLua
xLua等
学习Lua热更新技术流程是什么?
1,Lua语言基础学习
2,Lua和C#交互通信
3,使用AssetBundle资源更新
4,学习uLua SimpleFramework
LuaforWindows是什么?
Lua语言的开发环境(包含Lua的解析器、帮助文档、API手册)