Cocos2d lua绑定工具使用

Cocos2d lua绑定工具使用

Cocos2d的绑定工具其实就是对C++与Lua的交互的封装,C++与Lua通过LuaStack桥接实现通讯,即:一方压入数据,一方取出数据。官方给出两种方法绑定,一种是自动的,一种的手动的。自动主要用于大规模的绑定,小规模用手动即可。

自动绑定

笔者自动绑定主要是参考简书上的一篇文章操作的,读者参考:
https://www.jianshu.com/p/0f1e7d136863
操作即可,这里主要记录下遇到的坑。

Python相关问题
  1. 提示非Win32接口:使用Python x86版本,笔者电脑上的Clang库是x86的。
  2. 提示import的模块找不到:没有那个装哪个,装了Python的Pip工具的话会很方便。命令操作“pip+install+模块(版本)”即可
NDK相关问题
  1. 提示“*.h”找不到:主要是标准库找不到。这里笔者把NDKr10d 换成 NDKr9d 。应该也可以设置标准库路径解决。

手动绑定

手动绑定其实更加简单点,如果只是添加几个接口的话。
在这里插入图片描述
通过自动绑定,生成了以上两个文件,有一个叫“lua_cocos2dx_test_Test_printID”的接口,如果需要增加新接口,可以模仿这个接口的绑定方法。
添加你要绑定的接口:

int lua_cocos2dx_test_Test_printID(lua_State* tolua_S)
{
...
if (argc == 0) 
    {
        if(!ok)
            return 0;
        cobj->printID();
        return 0;
    }
...
}

加上你要注册的接口:

lua_register_cocos2dx_test_Test
{
...
tolua_beginmodule(tolua_S,"Test");
    tolua_function(tolua_S,"new",lua_cocos2dx_test_Test_constructor);
    tolua_function(tolua_S,"printID",lua_cocos2dx_test_Test_printID);
    tolua_function(tolua_S,"create", lua_cocos2dx_test_Test_create);
tolua_endmodule(tolua_S);
...
}

总结

Lua绑定这块自动绑定的工具使用有门槛,不懂Python的小伙伴遇到一些坑时可能会有点头痛。感叹一句,工具便捷的体现总是在你熟悉它之后。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王富贵9527

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值