一、Lua与C#

C#是编译型语言、Lua是解析型语言,关于编译型语言和解释性语言的介绍

一般来讲Lua不能单独用于一款游戏的开发,因此对于一个Unity项目,一般先用C#进行开发,后续的热更新再通过Lua来完成,从这里可以知道两点:

  1. Lua语言的目的是“嵌入式”,一般用于为其他语言开发出来的项目进行功能的扩展和补丁的更新
  2. 在最开始使用其它语言进行项目开发的时候,需要预留与Lua代码的“交互接口”

二、为什么需要Lua

在玩任意一款手游的时候,一般来讲客户端刚启动往往都会进行版本检查,如果需要安装新的补丁(往往很小的那种30KB~5MB),就会现场安装,安装成功后再进入游戏,这个过程非常的短暂

这即是热更新,需要Lua进行支持,换句话说:热更新是指可以在不关闭游戏客户端的情况下,动态的更新游戏本身的资源,如果没有热更新,那么每次玩家更新都需要重新下载客户端,这其实是非常糟糕的。要知道有些游戏还非常的大,而每次更新的内容可能又非常的少(例如修复BUG修改数值等等)

AssetBundle: Unity内资源的一种打包格式,客户端热更新从服务器上下载下来的资源,都是AssetBundle打包过的资源

Unity客户端开发的两个热更新框架:

  • ULua:对Lua的一次“包装”,本身已经写好了框架
  • XLua:腾讯的开源项目,开发阶段使用十分便捷

三、Lua的安装与使用

先下载Lua安装包:51lw

如果只是为了方便学习就下里面的 LuaForWindows_v5.1.4,如果安装的过程中出现“无法连接至服务器”的错误,那么就先安装 vcredist 2005 SP1,否则不需要,记得在桌面生成图标

安装成功后会出现两个图标,运行SciTE就可以开始编写代码了

当然你也可以接着装 ideaIC(IntelliJ IDEA Community) ,然后添加 EmmyLua-1.2.0 插件,这个需要小小的操作一下

https://blog.csdn.net/Jaihk662/article/details/95068078

四、Lua的配置

一般来讲对于这种非常小巧的编辑器(总大小不超过100MB),可能会没有可视化的设置界面,需要在设置文件内通过修改参数/代码的方式进行设置,LuaForWindow的设置方法如下:

  1. 以管理员方式运行SciTE
  2. 菜单 → Options → Open Global Options File,打开全局配置文件
  3. 一个例子:想要修改字体的话只需要修改其第10行代码:font.base=font:字体类型,size:字体大小

LuaForUnity1:Lua介绍与使用相关推荐

  1. Lua介绍极其在C#项目中的应用

    Lua在C#项目中的应用: Lua 是一个小巧的脚本语言.作者是巴西人.该语言的设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能.它的主页是 www.lua.org. Lua脚本可 ...

  2. Lua(一)——Lua介绍

    一:什么是Lua? Lua是一种轻量小巧的脚本语言,它由标准的C语言编写并且是开源的,可以很方便的和其他程序进行集成和扩展(C#,Java.....),其设计目的是为了嵌入应用程序中,为应用程序提供灵 ...

  3. Lua语言介绍(二)

    当然,Lua的最强大的功能是能与宿主程序亲蜜无间的合作,因此,下面我会告诉大家,如何在你的程序中使用Lua语言作为脚本,使你的程序和Lua脚本进行交互.这个例子就是我们熟悉的<魔兽争霸>. ...

  4. Lua之Lua安装与Lua变量-TTLSA(一)

    为什么80%的码农都做不了架构师?>>>    公司业务有用到Lua,与nginx结合起来实现高性能的web应用,想去弄懂这方面的知识,就去了解学习了下Lua,欢迎大咔们指教. 1. ...

  5. openresty开发系列12--lua介绍及常用数据类型简介

    openresty开发系列12--lua介绍及常用数据类型简介 lua介绍   1993 年在巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de ...

  6. 【编译原理】学习LUA

    前言 先了解一下什么是LUA: LUA官网:LUA官网 LUA介绍:LUA-百度百科 LUA教程:LUA教程-菜鸟教程 深入LUA 想要深入LUA,只有一个办法,就是看源码,下面是地址: https: ...

  7. lua入门之环境搭建、第一个demo

    前言 前段时间因为有些项目功能需要,自己研究了下lua,今天整理下,并以一个demo为示例演示 手机上的运行效果 分为几个步骤来逐步讲解. 1.lua介绍,为什么选择它? 2.环境安装 3.撸一个简单 ...

  8. esp8266保存html文件,八,ESP8266 文件保存数据(基于Lua脚本语言)

    应该是LUA介绍8266的最后一篇,,,,,,下回是直接用SDK,,然后再列个12345.......不过要等一两个星期,先忙完朋友的事情 前面几篇 用AT指令版本的 用LUA语言的,更灵活,功能更强 ...

  9. 第5章.网站首页高可用nginx+lua

    第5章 网站首页高可用nginx+lua 学习目标 了解Lua语言的基本语法 使用nginx+Lua+redis实现广告缓存 掌握nginx限流的基本使用方法 1 Lua介绍 1.1 lua是什么 ​ ...

最新文章

  1. HashMap、Hashtable、ConcurrentHashMap的原理与区别
  2. Python 装饰器实例
  3. 汇编语言的强制类型转换
  4. 计算机自带游戏关闭,win10系统自带小游戏关闭的办法
  5. 控制系统|反馈系统的稳定性分析
  6. 微信怎样连电脑连接到服务器ip,如何把微信小视频传到电脑上?(ipone也适用)...
  7. 负数除以正数余数如何求_关于数学中求余数问题的一个简单方法
  8. base64和jpg/png互转
  9. contest14 CF160div2 oooxx oooxx ooooo
  10. Python:retrying与tenacity模块失败重跑库
  11. 全民一起玩python提高篇,全民一起玩Python 基础篇+提高篇+笔记2019年
  12. 怎么把照片转换成jpg格式?这个好方法拿去
  13. Day7 零基础python入门100天Udemy训练营-Hangman Game 继续学习import, if else, while loop, for loop
  14. 张量基础2(张量乘法和对称)
  15. softmax、softmax损失函数、cross-entropy损失函数
  16. 七种方式实现垂直居中
  17. 【2022HVV系列】蓝队手册更新版(建议收藏)
  18. 想进世界顶尖投行 那我该上什么样的学校?
  19. 计算机中表示信息量最小的单位是什么,计算机中信息的最小单位是什么?
  20. html5怎么实现展开收起,小程序实现展开/收起的效果示例

热门文章

  1. python能做什么excel-python能做什么,python自学行吗?
  2. micropython和python区别-(一)什么是MicroPython?
  3. python电脑下载-PC端数据下载软件开发(Python)
  4. python简单爬虫代码-一则python3的简单爬虫代码
  5. python代码翻译器-【分享】python 翻译器,爬取百度翻译,并附上源码
  6. 中文语音识别系统搭建流程笔记
  7. 谷歌发布机器学习云平台 开放语音识别API
  8. 多角度了解科大讯飞公司之一(语音识别)
  9. 模块是python中普通的文件吗_python 包和模块
  10. 嵌入式linux调试dsi,做嵌入式开发时,你是怎么实现LCD显示的?