Unity热更新学习(二) —— ToLua c#与lua的相互调用


tolua 下载地址:http://www.ulua.org/index.html

c#调用lua的方法,tolua的官方例子提供了很多种。我初步学了一种在做项目使用的方法。通过DoFile方法执行lua脚本。目前只在windows环境下的Unity上测试,没有在真机运行。

一、创建一个c# script封装一下LogError方法

1 public class GameDebug { 2     public static void LogError(object msg) 3  { 4         Debug.LogError("打印:" + msg.ToString()); 5  } 6 }
View Code

并把这个类加到CustomSetting里,并wrap一下

二、创建一个lua脚本

local Main = {}; local c1,c2; -- 游戏主入口
function Main:GameEnter() GameDebug.LogError("从这开始"); end


return Main;
View Code

三、创建一个c# script并注册lua虚拟机,把这个script挂在场景里的某个GameObject上

 1 void Start () {  2         //创建lua虚拟机
 3         luaState = new LuaState();  4 
 5         //绑定lua虚拟机
 6  LuaBinder.Bind(luaState);  7  luaState.Start();  8 
 9         LuaTable lt = luaState.DoFile<LuaTable>("Main.lua"); 10         //调用lua游戏入口
11         lt.Call("GameEnter", lt); 12  lt.Dispose(); 13     }
View Code

运行结果:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM