最早接触cocos2d的时候是在去年暑期的时候,那是刚买笔记本,然后在上面安装虚拟器,再安装mac,折腾了几个星期,最后终于在iphone上运行了helloworld,也看了一些关于cocos2d的资源,不过因为是obj-c写的,语法不熟悉,就学得比较吃力点。后面在玩剑网3的时候,本本的硬盘不争气,坏掉了,只好送去维修,里面的环境就这样消失了,也没留文档之类的,那个时期硬盘很紧张,足足等了一个多月本本才回来,之后再也没心思去弄iphone了。现在在学习android的游戏的时候,看到有cocos2d-x这个引擎,用c++写的,以前基本没有接触过游戏引擎之类的,只移植和用过chipmunk物理引擎,趁现在有空,打算学习cocos2d-x,在巨人的肩膀上做游戏。为什么要学这个呢?主要有以下几个原因吧:
1,iphone上很多游戏是基于这个引擎的,有很多成功的例子
2,cocos2d-x是跨平台的,用c++写的,面向对象的方法,之前一直用c写,觉得很多代码都重复了,也顺便复习下c++
3,学习里面的设计,对比自己写的游戏框架,看自己写的差距有多大
4,发现很多公司招聘要求上有写这一项,尽快掌握这方面的知识
好了废话少说,把今天的学习过程写下。
一,cocos2d-x下载地址:http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Download
这里得注意一下哦,cocos2d-2.0-rc2-x-2.0.1 这个的helloworld是用opengl2.0的,目前没有发现android模拟器支持这个。所以下载
cocos2d-1.0.1-x-0.12.0这些1.0.x开头的来学习,它能支持2.1,目前低端android机是这个系统的。
二,修改根目录下的create-android-project.sh文件,这里修改如下
NDK_ROOT_LOCAL="/cygdrive/f/work/android/android-ndk-r8"
ANDROID_SDK_ROOT_LOCAL="/cygdrive/f/work/android/android-sdk-windows"
三,修改create-android-project.bat文件的以下几项
set _CYGBIN=D:\cygwin\bin
set _ANDROIDTOOLS=F:\work\android\android-sdk-windows\tools
set _NDKROOT=F:\work\android\android-ndk-r8
这样它才能找到正确的目录
四,运行create-android-project.bat
弹出了框后输入类似下面的
然后选2.1以上的版本,因为这个包只能支持2.1以上的
这样在根目录上便生成了hellCocos2d,如图
五,打开cygwin,进入cd "F:\work\android\cocos2d-1.0\hellCocos2d\android"目录
输入./build_native.sh,如图
编译需要几分钟,稍微等休息下
六,编译完后,最后在libs目录下生成一个libs/armeabi/libgame.so文件。
七,在eclipse里面导入这个项目,最后运行结果如下图
这个点退出没反应,暂时未知是什么原因,困了,明天再看看.
在main.cpp文件函数Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit里添加
view->create(480, 320);语句即可解决这个问题