【Lua学习笔记】Lua热更新介绍及开发环境配置

目录


一、热更新介绍

1.1何为热更新?

 简单来说,热更新就是指可以在不关闭游戏客户端的情况下,动态的更新游戏本身的资源。

1.2热更新存在的价值

现在硬件性能越来越高,手机端网络游戏的体积也越来越大;如果没有热更新,那么意味着每次游戏客户端更新,都要重新下载完整的APK包进行安装,这就有点恐怖了;但若有了热更新,那么只需要在客户端启动的时候,检查服务器有无新资源,如果有,就下载下来,进行资源的更新,这样每次客户端更新只要下载几MB或几百KB就够了。


二、Lua语言介绍

2.1Lua简单介绍

Lua与C#对比来看,C#是编译型语言,Lua是解释型语言。即C#程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了;而Lua代码不需要提前编译,是在运行时由解释器动态地逐条解析Lua语句代码,然后执行。

Lua语言是不可以单独完成一个项目的开发的,Lua语言出现的目的是“嵌入式”,为其它语言开发出来的项目进行功能的扩展和补丁的更新。

2.2Lua语言与C#语言交互

Unity项目是使用C#开发的,后续热跟新的功能需要使用Lua语言来实现。

因此我们最开始使用C#开发项目的时候,需要预留和Lua代码的“交互接口”,这就涉及到两门语言的代码的相互调用和访问。

2.3AssetBundle

AssetBundle是Unity内资源的一种打包格式,和电脑上的 rar , zip 压缩比较相似,客户端热更新的过程中,从服务器下载下来的资源,都是AssetBundle打包过的资源。

2.4ULua和XLua热更新框架

ULua和XLua是两个热更新框架,专门用于Unity客户端项目热更新开发。

其实就是两个“资源包”,可以导入到项目中去,在框架的基础上,完成项目需要的热更新逻辑。


三、Lua开发环境安装与细节配置

3.1LuaForWindows介绍

LuaForWindows是一款用于编写Lua语言的IDE(集成开发环境),主要包含两个部分:

  • Lua语言核心类库和解析器
  • 开源代码编辑器SciTE

3.2LuaForWindows安装

若LuaForWindows.exe安装失败,请先安装vcredist_x86.exe。

3.3LuaForWindows测试

  • 新建一个文件
  • 写入一行代码:print("good good study,day day up")
  • 存储为一个后缀为 .lua 的文件 
  • 运行功能,结果如下

在 SciTE 中,空白文件不可存储,未存储文件不可执行。

3.4LuaForWindows配置

SciTE中默认字号很小,可以通过Ctrl + 鼠标滚轮滚动,快速调整代码字体大小,但这种设置不会被保存,软件重启后还原。

点击【Options】菜单中的【Open Global Options File】,则可以看到SciTE环境的全局配置文件。里面可以修改的包括字体,颜色,窗口布局等等,修改相应的值即可(修改SciTE配置文件时,需要以管理员的身份运行)。

如第10行代码可修改字体字号,font.base=font:xxxxxx Console,size:xx 修改为:font.base=font:Consolas,Console,size:14 

若找不到自己想要修改的项目,可以再到【Options】的【Open black.properties】(如果使用的是白色背景,这里则是white.properties)文件中查找,这里存储的是更加细致的属性配置。修改这两个文件,基本上就能够满足大部分学习或是开发者的个人喜好。

猜你喜欢

转载自blog.csdn.net/LeeXxs/article/details/81294756