ToLua 笔记
来源:互联网 发布:淘宝手机详情尺寸大小 编辑:程序博客网 时间:2024/06/05 14:17
ToLua源码地址:https://github.com/jarjin/LuaFramework_UGUI
目前tolua使用心得记录:
1.所有要用到的C# 类 都要在CustomSettings.cs 里面注册,并更新绑定后才能使用。
2.lua调用lua 的require “” 【文件夹里lua脚本必须写路径】,例:require “3rd/pblua/login_pb”
3.在lua脚本前面生明了的C#类就可以像在C#里一样调用了,例:Vector3=UnityEngine.Vector3
4.在lua里使用C#脚本New对象时,不用写New,例:local v3= Vector3()
5.在lua里使用C#类时,属性,变量,静态方法可用“.”,一般方法使用 “:”调用。例:Vector3.up, v3:Normalize();
6.lua不支持泛型,类似GetComponent()可改为GetComponent(typeof(XXX))
7.在lua中继承关系的 子类可以使用父类的字段和方法,但是父类不能调用子类重写的方法
基础使用示例:
// 1.调用Lua 打印语句
LuaState lua = new LuaState();
lua.Start();
string hello =
@”
print(‘hello tolua#’)
“;
lua.DoString(hello, "HelloWorld.cs"); // 执行Lua 字符串代码 lua.CheckTop(); lua.Dispose(); lua = null;
//调用 *.lua 文件执行lua脚本
lua = new LuaState();
lua.Start();
//如果移动了ToLua目录,自己手动修复吧,只是例子就不做配置了
string fullPath = Application.dataPath + “\ToLua/Examples/02_ScriptsFromFile”;
lua.AddSearchPath(fullPath); //添加lua文件路径
lua.DoFile(“ScriptsFromFile.lua”); // 执行lua (一次)
lua.Require(“ScriptsFromFile”); //执行lua
// 调用Lua 方法 LuaFunction
private string script =
@” function luaFunc(num)
return num + 1
end
test = {} test.luaFunc = luaFunc ";LuaFunction func = null; // <-----LuaState lua = null; lua = new LuaState(); lua.Start(); lua.DoString(script); func = lua.GetFunction("test.luaFunc"); // 获取lua方法 object[] r = func.Call(123456); //有gc alloc int num = CallFunc(); //无 GC 调用 if (func != null) { func.Dispose(); func = null; }
。。。。。
其他更多案例可以去源工程的示例目录:Assets\LuaFramework\ToLua\Examples下 查看各类使用案例
看完以上示例,可以看看蛮牛上的这个tolua入门实战:http://m.manew.com/forum.php?mod=forumdisplay&fid=47&page=1&filter=typeid&typeid=396&mobile=2
- ToLua 笔记
- tolua学习笔记之一
- Unity ToLua & LuaFramework学习笔记
- tolua++
- tolua
- tolua
- Tolua使用笔记三:Tolua协程用法
- Tolua使用笔记三:Tolua协程用法
- 入手cocos2dx3.9笔记 3 tolua++解析
- ToLua学习笔记(二) Example 02 ScriptsFromFile
- ToLua学习笔记(三) Example 03 CallLuaFunction
- ToLua学习笔记(四) Example 04 AccessingLuaVariables
- ToLua学习笔记(五) Example 05 LuaCoroutine
- ToLua学习笔记(七) Example 07 LuaThread
- ToLua学习笔记(八) Example 08 AccessingArray
- ToLua学习笔记(九) Example 09 Dictionary
- ToLua学习笔记(十) Example 10 Enum
- tolua 学习笔记 UI监听事件
- 字符串、数组、Math的方法
- SIEMENS ppi协议在运动控制中的应用
- Android源码分析
- python中打开含中文的文件路径出错的情况
- AFNetworking到底做了什么
- ToLua 笔记
- 回首,展望
- 在matlab中运用cvx与Mosek
- 线性代数习题求解复习
- Android 下不同格式字体的实现方法
- 欢迎使用CSDN-markdown编辑器
- Android动态破解微信本地数据库(EnMicroMsg.db)
- CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
- 一.机器人概率学笔记_定位