cocos2d 3.x lua 调用 c++自定义类
环境搭建
python安装
下载地址:https://pan.baidu.com/s/12ZeDY3vPxDT1S8juYGiMUQ
下载安装后 在系统变量 Path 下新增 python 安装目录 例如 F:\Python27 测试
JDK 安装
下载地址:https://pan.baidu.com/s/1Pj_XnvaveSajuWRy7w9PTg
下载后安装,新增系统变量 JAVA_HOME 内容为 jdk安装目录
新增 系统变量 CLASSPATH 内容为 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
在 系统变量 Path 下新增 %JAVA_HOME%\bin
SDK安装
下载地址:https://pan.baidu.com/s/1fneFppKNejN7QIguu8PU1w
下载解压后, 执行 SDK Manager.exe (以android-20举例)
勾选Tools 下得
勾选
然后点击右下角安装
新增 系统变量 ANDROID_SDK_ROOT 内容为 sdk解压安装目录
NDK 安装
下载地址:https://pan.baidu.com/s/1cwk_j1e9fCDFeU4PgxdQHw
解压即可, 新增系统变量 NDK_ROOT 内容为 解压目录
ANT 安装
下载地址:https://pan.baidu.com/s/1w3FNYIftHCDBYmJhonMaoA
解压即可 , 新增系统变量 ANT_ROOT内容为 解压目录下得bin目录
安装 setuptools
下载地址:https://pan.baidu.com/s/1Xr1RXYLpiL4fUx4jdG215g
解压后 cd到解压解压目录 执行 python setup.py install
等待安装完成
PyYAML 安装
下载地址:https://pan.baidu.com/s/19jHWajQmnK-Mgymk4u-Cww
解压后 cd 到解压目录 执行 python setup.py install 等待安装完成
Markdown 安装
下载地址:https://pan.baidu.com/s/1Eb1H3ZLh_RnWmqWKKFiP6Q
解压后 cd 到解压目录 执行 python setup.py install 等待安装完成
Cheetach 安装
下载地址:https://pan.baidu.com/s/1ShnuLzUBGWwGSkRLL1wFzA
解压后 cd 到解压目录 先执行 python setup.py build
再执行 python setup.py install
在系统变量 Path 下新增 python安装目录下得 Scripts路径 例如 F:\Python27\Scripts
环境配置完成
新建一个 cocos lua 工程 cocos new test -p com.aa.test -l lua -d f:\
编写自定义类
MyClass.h
MyClass.cpp
到工程下
复制 cocos2dx.ini 并改名为 MyClass.ini
打开 MyClass.ini 修改标记得地方
再打开 genbindings.py 翻到161行左右
注释其他 并添加自己得类
执行
等待生成完成
转到 目录下
会发现2新得文件 也就是刚才自己写得
打开 lua_MyClass_auto.cpp 文件 修改 MyClass.h 路径 为绝对路径 如果不想 自行到vs里面添加搜索路径
再转到 目录下
打开 lua_module_register.cpp 修改内容
回到工程 在 libluacocos2d 工程下得 auto 下添加刚才生成出来的2个文件
编译工程
lua 里面编写
运行
至此 lua 调用 c++自定义类完成
打包到 android apk,为了观察方便 修改lua代码
转到 修改
加上新写得类文件
转到修改
cd 到 这个目录下
执行 cocos compile -p android --ap android-20
--ap是指使用android得版本 也就开头提到sdk下载得android版本
等待编译完成
apk 在 下
至此android 测试就成功了 ,ios 没mac 没测试 应该也是一样 而且linux下应该会更方便 注意在生成的auto文件
的包含路径修改就可以了