Unity Lua 之 在 Unity中 搭建 xlua 開發環境,並運行第一個 Hello Lua
目錄
Unity lua 之 在 Unity中 搭建 xlua 開發環境,並運行第一個 Hello Lua
一、簡單介紹
Lua 是一種輕量小巧的腳本語言,用標準C語言編寫並以源代碼形式開放, 其設計目的是爲了嵌入應用程序中,從而爲應用程序提供靈活的擴展和定製功能。
xLua爲Unity、 .Net、 Mono等C#環境增加Lua腳本編程的能力,藉助xLua,這些Lua代碼可以方便的和C#相互調用。
xLua在功能、性能、易用性都有不少突破,這幾方面分別最具代表性的是:
-
可以運行時把C#實現(方法,操作符,屬性,事件等等)替換成lua實現;
-
出色的GC優化,自定義struct,枚舉在Lua和C#間傳遞無C# gc alloc;
-
編輯器下無需生成代碼,開發更輕量;
在Unity中使用xlua 的重要一個原因就是熱更新,我們本着這個歌目的開始我們的學習。
二、xlua的下載,以及Unity 中搭建 xlua 環境
1、登錄 Github,在Github 中搜索 xlua,找到 Tencent/xLua
(網址:https://github.com/Tencent/xLua )
2、點擊下載 xlua 包
(可以git 下載,也可以直接下載壓縮包)
3、下載好後,解壓
4、新建一個Unity 工程
5、把 xlua 解壓包下的 xLua-master\Assets 文件夾的文件導入 Unity 工程
6、加載完後,菜單欄有 xlua 菜單表示,導入成功
三、Unity 中編寫運行第一個 Hello lua
1、場景中,新建腳本
2、編寫完腳本,掛載到遊戲物體上
3、運行場景,輸入 Hello Lua
四、關鍵代碼
using UnityEngine;
using XLua; // 引入 Xlua 命名空間
public class HelloLua : MonoBehaviour
{
// lua 環境變量
private LuaEnv luaEnv;
// Start is called before the first frame update
void Start()
{
LuaInit();
// 執行 lua 語言,打印 Hello lua
luaEnv.DoString("print('Hello Lua')");
}
void OnDestroy() {
LuaDispose();
}
/// <summary>
/// lua 環境構建
/// </summary>
private void LuaInit() {
luaEnv = new LuaEnv();
}
/// <summary>
/// lua 環境釋放
/// </summary>
private void LuaDispose() {
luaEnv.Dispose();
}
}