FY工作记录20140514_回忆录

1、收到要求要用lua环境完成一个基础UI界面,但多次因为资源名字等细节问题浪费事件,_TP_内部编辑器使用。做事要细致
2、内部使用的工具就直接沿用先,等完成了解理由再谈变化
3、UI编辑工作,不好玩呢


本篇回忆录主要是重复一下quick-x-cocos2d 自定义类问题:lua调用C++调用类,cocos2d-x版本2014年3.0lua版本尚未发布的版本,可能是2.1-2.2。这不重要。因为lua版本的兼容好像从2.0开始就没什么问题了。


例子以windows为例子,环境为win8.1+VS2012等。
步骤1:打开引擎自带的quick-x-player工程,在cocos2dx_2012库中添加自定义类,路径如下:

cocos2d-x/external/extra/,添加Myclass文件夹即可。插图如下:

FY工作记录20140514_回忆录

userDataManager和AStar则为自定义类,照样添加即可。

步骤2:luablinding的说明规则,大家可百度,本人当时将inline成员全部按照.h/.cpp形式,实现了以防万一。原因适用luablinding方式调用的C++类是作为一个库调用,需要添加头文件说明,类似于Android项目的.mk文件。在luablinding文件夹下的cocos2dx_extra_luabinding.tolua中增加自定义类声明,只保留public成员声明(具体百度规则即可),格式如下:

FY工作记录20140514_回忆录

步骤3:运行当前文件夹下的批处理命令build.bat。

步骤4:重新编译即可,在这过程中,你可能把const删掉了或忘记在tolua文件中增加自定义的头文件引用:$#include "gl_createColorTexture/gl_createColorTexture.h"等等小错误,要仔细盘查。成功编译后自定义类已成为cocos2d.lib的一个库函数了,为全局变量。

你可能感兴趣的:(C++,类,自定义,lua)