现在的位置: 首页 > 综合 > 正文

cocos2d-x 3.0游戏实例学习笔记 《跑酷》移植到android手机

2017年02月21日 ⁄ 综合 ⁄ 共 2438字 ⁄ 字号 评论关闭

说明:这里是借鉴:晓风残月前辈的博客,他是将泰然网的跑酷教程,用cocos2d-x
2.X 版本重写的,目前我正在学习cocos2d-X3.0 于是就用cocos2d-X 3.0重写,并做相关笔记

好吧,自从上次《跑酷》完结之后,就什么没做什么的,主要是修复了一点点bug ,也在相应的文章里面做出了相应的改动。不过,只能在window上看着玩又有什么太大意思呢!!!于是乎又尝试着弄到手机上试试--OK,初生牛犊不要脸,哦不!不怕喷。这里记录一下我的移植过程。(这里会用到新的大小的资源。待会也会全部打包给出)。。。

这里主要讲几个事:

1,一点点麻烦

2,简单粗暴的移植方式

3,移植需要的准备-----就是怎么样才能移植成功

先看看我的手机上的截图:

那么看看我们现在的问题:
。。我们原来运行在win32上的那些资源,不通过屏幕适应的相关知识,放到手机上肯定是不合适的,才640*320,现在许多手机差不多都是4.0寸的屏幕以上啦,分辨率也很多都是 1200(左右)*800(左右)。。可是对于屏幕自适应的相关知识的匮乏,让我不得不找捷径,看看原来从前辈那里下载的工程中,还有一份资源是用于ipad ,查看了一下那些图片的大小。。。。哈哈哈哈,居然大小也差不到那里去。。。
于是乎,简单粗暴的方式就来啦:
1,下载新的资源替换原来的资源:这里包括:新资源,新代码(也就为移植修改了一些Size),生成的Apk  http://pan.baidu.com/s/1gd5TzPL
不知道是不是今天百度云有点问题。。。上传好几次都失败,如果有人下不了,可以在这里留邮箱,我发种子,哦不。。发给你
2,我们需要做的就是修改一些基本的Size,以适应你的手机
3,第三也没啥好说的,反正都在代码里面,和之前的代码的差别没多大。主要是吐槽一下,亲.....你能想象这是有多麻烦吗?这种简单粗暴的方式就是,改了一个地方的Size,我就重新编译android一次,然后连接手机,安装apk,测试,发现问题,修改Size,编译android-----循环N次。。。。编译过android的小伙伴应该知道,编译是有多慢,多卡....
好吧,这里就来看看我们怎么才能移植成功:
首先,我们用到了按钮,也就是用到了libExtensions.lib 的东东,这里应该叫做 加入第三方库吧!!这么高大上的东西我们先不了解,简单的跟我做:
1.打开【项目目录】\proj.android\jni 里面的Android.mk。。。修改为:红色部分是需要添加的代码
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2dcpp_shared

LOCAL_MODULE_FILENAME := libcocos2dcpp

LOCAL_SRC_FILES := hellocpp/main.cpp \<span style="color:#ff0000;">
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/Base.cpp \
                   ../../Classes/BaseManager.cpp \
                   ../../Classes/Coin.cpp \
                   ../../Classes/GameOver.cpp \
                   ../../Classes/MainScene.cpp \
                   ../../Classes/PlayScene.cpp \
                   ../../Classes/Rock.cpp \
                   ../../Classes/Runner.cpp</span>

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes\<span style="color:#ff0000;">
			  $(LOCAL_PATH)/../../cocos2d/cocos/2d/../../extensions \</span>

LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static<span style="color:#ff0000;">
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static</span>


include $(BUILD_SHARED_LIBRARY)

$(call import-module,2d)
$(call import-module,audio/android)
$(call import-module,Box2D)<span style="color:#ff0000;">
$(call import-module,extensions)</span>

注意这里添加相应的代码就是的,别多弄了一些换行什么的。。关于这个东西,我也不熟悉,但是之前好像因为多的 一些换行,编译过程中出错啦

2,然后 cmd 到项目目录下,输入  cocos compile -p android -j 10

OK。。。。就这么简单。。。。。然后,你就洗洗睡吧。。。这东西编译得那么十几二十分钟
然后出现类似于下面的: (这里是我以前截图留下来的) 主要是看到:
BUILD SUCCESSFUL 
那么恭喜,你编译成功啦

然后,你就可以到 工程目录下 \proj.android\bin 里面看到有一个 Run-Debug.apk。。。你就可以把它拷贝到手机上啦。。。。
OK,这里主要想说的是,一般游戏中用不到别的第三方库或者别的什么的。。。你是不需要修改Android.mk的。。就比如这里,我们游戏中用到了Extension库,(是不是第三方库我也不知道)...那么就要修改Android.mk 添加一些东西。。这些东西大多网上都有。。。。

好吧。。到这里又结束啦
个人愚昧观点,欢迎指正与讨论!大笑

抱歉!评论已关闭.