網上Unity使用lua的文章原本就少..slua又是個偏小衆的lua庫..文章更少..git
已有的文章又有點坑...好比方法名關鍵字寫錯啦..真的是坑多= =github
因此總結一片超簡單教學= =bash
這篇文章面向剛開始學習lua 想在unity項目中使用sLua庫的同窗..學習
作到這步你已經能夠在Assets/Slua/example中查看sLua的官方例子了.每個Scenes都展現了一種使用方法.ui
建立一個新的Scene而後建立一個CreateEmpty建立一個C#文件掛載上去.而後在C#文件中寫以下代碼:lua
using UnityEngine;
using SLua;
public class Test : MonoBehaviour{
private static LuaState ls_state;
void Start()
{
ls_state = new LuaState();
ls_state.doString("print(\"Hello Lua!\")");
}
}
複製代碼
成功後的樣子是這樣:spa
注意有些教程中LuaState在聲明成屬性時就初始化了,可是會報錯,必定要在Awake方法或Start或須要用到的時候再進行初始化...3d
C#代碼代理
using UnityEngine;
using System.Collections;
using SLua;
using System.IO;
public class OpenLuaFile : MonoBehaviour{
public LuaState state;// sLua腳本代理
void Start()
{
state = new LuaState();
state.loaderDelegate = ((string fn) =>
{
string file_Path = Directory.GetCurrentDirectory() + "/Assets/Script/Lua/" + fn;
Debug.Log(file_Path);
return File.ReadAllBytes(file_Path);
});
//執行腳本
state.doFile("HelloLua.lua");
}
}
複製代碼
在上面設定的路徑中建立lua文件code
代碼:
print("你好 我是文件裏的Lua!")
複製代碼
"/Assets/Script/Lua/"爲放置ua文件的目錄,這個根據本身需求隨意改變.
本篇教程很基礎,若是有精力會將以後學習到的知識都整理成博客分享給你們~