• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

win7系统cocos2dx3.4绑定自定义类到Lua

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Cocos2d-x 3.0开始使用bindings-generator来生成c++类的lua绑定。bindings-generator基于tolua++,通过配置tools/tolua中的ini文件以及运行genbindings.py就可以自动生成c++类的绑定,具体的步骤在cocos2d-x-3.4\tools\tolua\README.mdown文件中,文档说的很简单,但是这个过程中我遇到很多问题,根本无法生成,索性把python生成绑定文件的环境搬到VS里,这样就能调试,找出问题了,具体环境的搭建下面会讲到。先看下具体生成绑定文件的说明:

1.README.mdown 说明


On Windows:
------------

* Make sure that you have installed `android-ndk-r9b`.

安装android-ndk-r9b,安装好以后要添加环境变量NDK_ROOT,这个目录的上级目录中不能有空格存在, 比如说, 如果是放在program files目录下面, 后面生成.h & .cpp文件的时候会出错, 我的是:E:\soft\android-ndk-r9b_64

* Download python2.7.3 (32bit) from (http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi).

安装python2.7.3

* Add the installed path of python (e.g. C:\Python27) to windows environment variable named 'PATH'.

安装好python后, 在系统环境变量的PATH中设置python所在的目录,我的是E:\soft\python2.7.3

* Download pyyaml from http://pyyaml.org/download/pyyaml/PyYAML-3.10.win32-py2.7.exe and install it.

下载并安装PyYAML
* Download pyCheetah from https://raw.github.com/dumganhar/my_old_cocos2d-x_backup/download/downloads/Cheetah.zip, unzip it to "C:\Python27\Lib\site-packages"

下载pyCheetah ,并解压到\Python27\Lib\site-packages目录
* Set environment variables (`NDK_ROOT`)

设置NDK_ROOT环境变量,第一步已经说过
* Go to "cocos2d-x/tools/tolua" folder, and run "genbindings.py". The generated codes will be under "cocos\scripting\auto-generated\js-bindings".

进入cocos2d-x-3.4\tools\tolua\ ,执行genbindings.py

 

2.python visual studio 环境搭建

1.到http://pytools.codeplex.com/ 下载 python 在VS中的IDE插件PTVS

2.在VS中创建python 工程

 

3. 把cocos2d-x-3.4\tools下 bindings-generator 和 tolua 文件夹复制到python工程目录下,复制一份genbindings.py 改名为createCustomBindings.py用来调试

4.打开python工程,把刚才添加的两个文件夹包含到工程,具体操作是:在VS里点击显示所有文件,然后选中2个文件夹,右击选择包括到项目

5.右击项目选择属性,设置启动文件为 ./tolua/createCustomBindings.py

 

环境打好后,开始下面的调试修复工作

3.调试修复

按F5调试,接下来会有很多报错,所以就不一一列举了,直接把改好的项目拿出来

http://yunpan.cn/cJGqhpB479dAv  访问密码 a2eb

 

下载后

createCustomBindings.py中的output_dir = '%s/HappyXiYou/Classes/auto' % workdir 这个为生成文件保存的路径,改成自己的

myclass.ini中

为头文件路径和要导出的类名,要改成自己的,workdir实在程序中赋值的,自己先把代码流程看下,基本有问题的话也可以自己解决了。

主要修改了一下几个文件,具体改了啥,可以自己和3.3原来的文件对比下就可以了

 

关于配置文件的细节说明请参考:

http://www.cocoachina.com/bbs/read.php?tid=196416

http://cn.cocos2d-x.org/tutorial/show?id=1421

http://www.cnblogs.com/emyueguang/p/3713635.html

http://cocos2d-x.org/docs/manual/framework/native/v2/lua/lua-binding-for-custom-class/zh

生成截图:


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
mac下搭建lua环境发布时间:2022-07-22
下一篇:
cocos2dx2.x版本:简化提炼tolua++绑定自定义类到lua中使用发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap