写在最开头的地方
因为之前用的都是cocos2d-x,lua语法这一块儿我就没打算细细的掰扯一遍了,所以,直奔主题关于c#如何整一个lua。
首先,我对xlua其实有一点点的小误会,我以为它是用c#实现的lua虚拟机、解释器什么的,当我打开代码的时候发现,xlua其实是把lua打成了动态链接库(dll、.so),然后在c#里包了一层(下面的代码截图里有调用dll的地方)。仔细看的时候又发现,在c语言层里也做了一些增强。具体的内容就找个时间单独写一篇笔记好好掰扯掰扯。现在就先写一个最简单的lua程序。
如果,我们打算用纯c写一个lua程序,该怎么写呢?以下,是一个最简单的基于c语言的lua程序。
在安装了lua库的情况下,执行命令
gcc -omain main.c -llua就可以了。
执行这个main程序。
至于mac os x系统里如何安装lua库...哎~跑题儿了不是?算了,还是掰扯几句吧!
1.下载lua的库,下载地址 http://www.lua.org/
2. 解压这个zip
3. ./configure
4. make
5. sudo make install
回到unity的话题里来,在上一篇的环境里。打Assets目录,新建一个Scripts文件夹,做事嘛,稍微讲究一点。新建一个c#文件,LuaBehaviour.cs
这个脚本一下子比刚才那个c程序简单多了,new一个luaEnv,然后就可以直接dostring ,Dispose结束了。在场景里找一个节点把这个脚本挂上去,点击xlua菜单。
如果,之前没有生成过代码的话,Clear Generated Code、Generated Code按顺序执行一遍,等待编译结束,点运行就可以看到那个传说中的hello world。
到这里,我之前在环境搭建篇里遗留的第一个hello world程序就算写完了。
如果实在是不喜欢这两个英文的命令名字,可以跟进代码里把这俩货改成你喜欢的汉字就可以了。
写在最后的话,这只是一篇极其简单的xlua探索笔记,更多的东西还需要从文档和源代码里去发现。另外,这些开源的项目既然开源了代码都是允许各种魔改的,秉承着开源软件精神把一些好的改良提交到github,不要忘记了薪火相传。