* Make sure that you have installed `android-ndk-r10c` or later.
* Download python2.7.3 (32bit) from (http://www.python.org/ftp/python/2.7.3/python-2.7.3.msi).
* Add the installed path of python (e.g. C:\Python27) to windows environment variable named 'PATH'.
* Download pyyaml from http://pyyaml.org/download/pyyaml/PyYAML-3.11.win32-py2.7.exe and install it.
* 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"
* Set environment variables `NDK_ROOT` and `PYTHON_BIN`
* Go to "cocos2d-x/tools/tolua" folder, and run "genbindings.py". The generated codes will be under "cocos\scripting\auto-generated\lua-bindings".
注意点:1)修改ndk为r9b版本,
2)PYTHON_BIN路径为.exe的全路径,例如当前(C:\Python27\python.exe)
2.修改ini文件
说明内容:
•[title]:要配置将被使用的工具/ tolua的/ gengindings.py脚本的称号。一般来说,标题可以是文件名。
•prefix:要配置一个函数名的前缀,通常,我们还可以使用文件名作为前缀。
•target_namespace:要配置在脚本层模块的名字。在这里,我们使用cc作为模块名,当你想在脚本层REF的名称,您必须将一个名为前缀,CC在名称的前面。例如,CustomClass可以参考作为cc.CustomClass。
•headers:要配置所有需要解析的头文件和%(cocosdir)s是的Cocos2d-x的引擎的根路径。
•classes:要配置所有绑定所需的类。在这里,它支持正则表达式。因此,我们可以设置MyCustomClass。*在这里,用于查找多个特定的用法,你可以对照到tools/tolua/cocos2dx.ini。
•skip:要配置需要被忽略的功能。现在绑定发电机无法解析的void *类型,并委托类型,所以这些类型的需要进行手动绑定。而在这种情况下,你应该忽略所有这些类型,然后再手动将它们绑定。你可以对照到配置文件路径下的cocos/scripting/lua-bindings/auto 。
•rename_functions:要配置的功能需要在脚本层进行重命名。由于某些原因,开发者希望更多的脚本友好的API,所以配置选项就是为了这个目的。
•rename_classes:不在使用。
•remove_prefix:不在使用。
•classes_have_no_parents:要配置是过滤器所需要的父类。这个选项是很少修改。
•abstract_classes:要配置的公共构造并不需要导出的类。
•script_control_cpp:是的。要配置脚本层是否管理对象的生命周期。如果没有,那么C++层关心他们的生命周期。
现在,它是不完善的,以控制原生对象的续航时间在脚本层。所以,你可以简单地把它设置为no
3修改genbindings.py
4.生成frameworks\cocos2d-x\cocos\scripting\lua-bindings\auto下的绑定文件
5
7.注册给lua使用
进入到文件夹
C:\Users\user\Documents\Cocos\Link\frameworks\cocos2d-x\cocos\scripting\lua-bindings\manual
打开CCLuaStack.cpp,添加
#include "lua_cocos2dx_custom_auto.hpp"
register_all_cocos2dx_custom(_state);