使用lua脚本编写场景
在lua中可以使用import导入引擎,导入的引擎以表的形式存在。在学习的过程中遇到了很多坑,例如:一直无法导入UnityEngine,总是出现路径错误。最后只能像slua提供的example一样编写,将lua文件放进Slua下的Resources文件夹中,还要注意的是,必须将lua后缀改成txt后缀,不然是无法读取的。
创建C#脚本
创建一个C#脚本用来启动lua脚本。
C#脚本创建了一个LuaSvr,然后用init来执行test.txt,test.txt中的main函数会被执行。init会给luasvr初始化一个luastate,如果直接使用svr.start是不行的,因为svr.start使用的是luastate中的dofile。但是有一个问题就是通过luastate设置loaddelegate却没有效果,现在仍没有解决。
lua脚本
注意要保存为txt,并保存在Slua中的Resources文件夹中,然后运行:
使用lua创建3d对象,读取lua的消耗和lua的运行效率能让我们明显看到cube创建出来之前需要一定的时间,因此3d的游戏的主要界面主要逻辑还是使用C#更快,在需要热更新的ui等等的地方使用lua更为合适,毕竟更新lua不需要重新再编译。
1
FIN 2016.7.29/11.30