lua是一个非常厉害的东西!
lua最强大的优势在于 不用重新编译项目就可以修改游戏逻辑 大大缩减了开发进程
首先 要想与cocos2dx游戏开发中使用lua 必须解决的问题就是c++和lua的通信问题 c++和lua的通信是通过 堆栈 和 全局表 实现的
我们先来看看整体通信过程:
假若我们lua文件中有此语句: helloLua = "myFirstLua"
我们想要获取这个字符串
1.c++将helloLua放入堆栈之中(很明显放在栈顶)
2.lua于栈顶获取到helloLua 此时helloLua被取出了 此时堆栈为空了
3.lua于全局表中查找helloLua对应的字符串“myFirstLua”
4.全局表将“myFirstLua”返回给lua
5.lua将“myFirstLua”放回栈顶
6.c++于栈顶获取到“myFirstLua”
c++和lua通信的几本原理就是这样的
下面我们来看看相关的具体代码:
1.首先我们要引入lua库 并且 包含相关目录
2.开始使用