cocos2d-x win32开发移植到Android平台

今天折腾了3个多小时终于把这蛋疼的玩意搞定了,写个日志记录下,省的以后又来琢磨一遍。
在进行移植前,cocos2d-x Android开发环境必须已经搭建好,至于怎样搭建,自己百度。
环境搭建好以后,首先说下win32下的cocos2d-x游戏开发。
第一步:进入cocos2d-x(我使用的是cocos2d-x-2.1.4)安装目录\
tools\project-creator,如下图所示:
 
 执行py脚本(python安装以及PATH变量配置,请自行百度),依次输入WIN32 VS开发环境下的解决方案名称以及安卓工程名称,如下图所示:
 
回车执行,如下图所示即工程创建成功。
 
(上图是我自己将路径进入,工程名称输入以及py脚本的执行,写到了一个bat里面,cocos2d自带的py脚本执行完后,貌似就直接退出窗口了。)
工程新建OK后,进入cocos2d-x下的projects目录下,找到刚才的工程名TEST,进入该目录,其内容如下:(2.1.4比1.0.1好多了,这个目录结构一看就节省好多工作量,1.0.1还需要手动将源代码文件和资源文件分别拷到Classes和Resource里)

其中Classes:存放cpp,h文件,所有游戏相关的文件源文件都存放在这个目录里,Main文件除外;
Resources:存放游戏使用到的媒体资源,图片,声音,动画什么的;
proj.XXX:对应平台的工程文件。
在这里我主要用proj.Win32以及proj.android。
 工程新建OK,接下来就进行编辑,其中WIN32我使用的开发环境是VS2010,进入proj.Win32目录,双击那个2010的解决方案图标,就进入VS对该工程的编辑状态;进入后,首先生成一次解决方案,这个过程一般需要10分钟左右,然后编写相应文件(注意新增的源代码文件一定要存放在Classes目录下)。然后调试什么的就是那么回事,这里就不啰嗦了。
WIN32下的开发搞定后, 移植到Android平台时,生成so文件有两种方式,一种是用cygwin,一种是在Eclipse下配置ndk来搞。这两种方式各有优劣吧,但是如果以后C++相关部分不想使用VS开发,转而使用Eclipse开发时,用第二种方式很方便。废话不说,说下怎么搞吧。
第一步,也是最关键的一步修改Android.mk文件,这个文件修改不好的话,你这个工程无论如何都通不过编译。
其修改主要有:引入相关的CPP文件,如下图所示:
 
一定要使用相对路径来引入文件,本来在2.0以前版本,底下那些库引用都要自己来写的,不过现在官方已经写好了,直接用就好,不过声音引擎在用的时候,貌似有问题,这个问题1.0.1版本的我没搞定,2.1.4的还没有试验,这个有待后续搞定。
LOCAL_MODULE==libLOCAL_MODULE_NAME==JAVA文件中加载的库名,这个关系必须城满足,不然即使so文件生成成功,真机测试的时候依然会报so文件找不到的FC错误。(2.0以后的cocos2d-x不支持模拟器调试)
第二步:
1、使用cygwin来生成so文件
     使用cygwin生成so文件的话,不用先打开eclispe,打开cygwin进入所在工程目录,如下图所示:

然后执行./build_native.sh脚本(注意使用ctgwin必须更改create_android.bat脚本里的CYGWIN和NDK的设置信息)
执行成功后,会在proj.android下多出libs以及obj两个目录,其中libs下面存放so文件,obj存放二进制文件。
2、使用Eclipse+NDK来生成so文件
打开Eclipse,导入该工程,然后右键--属性--Builders,先勾掉CDT Builder,然后new-program新建一个构建配置。如下图


环境设置的NDK_MODULE_PATH设置为:
D:\ja\cocos2d-x-2.1.4\cocos2d-x-2.1.4;D:\ja\cocos2d-x-2.1.4\cocos2d-x-2.1.4\cocos2dx\platform\third_party\android\prebuilt\
根据自己实际的cocos2d-x安装目录更改
配置完成后,点击Finsh,然后clean下工程,就会自动进行so文件编译,编译完后,刷新工程会多出libs,obj两个目录,这时SO文件编译就OK了
第三步 真机调试
cocos2d-x 2.0以后貌似不支持模拟器调试了,所以得用真机上。
在调试之前,先将资源文件拷到安卓工程的asserts目录下,然后右键run as就OK了。 
真机运行截图:
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值