cocos2dx之Lua调用C++

现在cocos2dx3.8自己封装了以前的toLua++,比以前更好用了。

先来看一下整体步骤:

1.编写一个.ini文件。 2,修改genbindings.py脚本。 3,执行genbindings.py脚本。 4,将生成的桥接文件加入工程。5,修改lua_module_register.h。6,Lua中的使用

原文地址:http://blog.csdn.net/dingkun520wy/article/details/49839717

1、编写自己的ini文件

cocos2d-x-3.8.1/tools/tolua目录下能看到genbindings.py脚本和一大堆.ini文件,这些就是bindings-generator的实际执行环境了。随便找一个内容比较少的.ini文件,复制一份,重新命名为BaseLuaCpp.ini。大部分内容都可以凑合不需要改,这里仅列出必须要改的重要部分:

cocos2dx之Lua调用C++


特别注意:

如果.ini配置文件中存在macro_judgement = ...宏定义,要特别小心,我第一次是从cocos2dx_controller.ini文件复制来的,结果没注意macro_judgement,导致生成的桥接类文件加入了不该加入的宏,只在iOSAndroid平台上才起作用,对Mac平台无效,这个要特别注意。

2、修改genbindings.py文件

文件路径:cocos2d-x-3.8.1/tools/tolua/genbindings.py

修改genbindings.py文件,BaseLuaCpp.ini文件加进去:

全局搜索“cmd_args = {” 找到要添加的位置

cocos2dx之Lua调用C++


3、编译genbindings.py

在Mac系统上要先安装Python的yaml、Cheetah包

打开终端

执行:sudo easy_install pip

安装yaml

执行:sudo easy_install pyyaml

执行:sudo python -m easy_install pyyaml

执行:sudo easy_install pyyaml

安装Cheetah

先下载cheetah:http://pythonhosted.org//Cheetah/http://download.csdn.net/detail/dingkun520wy/9277269

进入目录执行 sudo python setup.py install

安装完成后

cd到/Users/kuna/Documents/cocos2d-x-3.8.1/tools/tolua目录下

执行:python genbindings.py


4将生成的桥接文件加入工程

成功执行genbindings.py脚本后,

会在/Users/kuna/Documents/cocos2d-x-3.8.1/tools/tolua目录下看到新生成的文件:

cocos2dx之Lua调用C++

将文件复制到自己的工程下,并加入工程

cocos2dx之Lua调用C++


5、修改lua_module_register.h文件

cocos2dx之Lua调用C++


6Lua中的使用

--调用C++函数
function LuatoCpptest()
    base.BaseUtil:LuatoCPPTest()
end

原文链接: https://www.cnblogs.com/lexiaoyao-jun/p/5208241.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/224611

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午12:30
下一篇 2023年2月13日 下午12:30

相关推荐