现在是周五的晚上
这是一周最好的时间段
刚才看了小段09的dota视频
上一次9神的《董小姐》在网络上引起很大反响
都说很像人生
里面有不放弃、有富二代、有不公平
开搞
这次打算把这个横版拳击游戏跑在手机上,并且改的BT一下
----------------------------------------------------------------------------------------
-1- 修改分辨率
----------------------------------------------------------------------------------------
修改main.cpp文件,把分辨率改为手机的分辨率960*540,运行看下
好像不行,背景图不是一个单张的图,不能直接拉伸背景图。
改为原分辨率,想想别的办法。
看看有没有类似于 libgdx 引擎那种直接拉伸的方法。估计有,搜之。。。
//kResolutionExactFit x,y都拉伸,使铺满屏幕 //kResolutionNoBorder 一个方向铺满屏幕,另外一个方向超出屏幕 //kResolutionShowAll 854 * 480 的设计区域全部可见,但是可能留有黑边(如在960 * 640的屏幕上)CCEGLView::sharedOpenGLView()->setDesignResolutionSize(480,320,kResolutionExactFit);
要得就是这个方法,前两个参数是设计分辨率,
第三个参数是拉伸方式,相当于Android ImageView 中色 ScaleType
设置分辨率改为 480,320
然后在main。cpp文件里设置窗口大小:960 540
ok,正确拉伸了!
----------------------------------------------------------------------------------------
-2- 运行在手机上
----------------------------------------------------------------------------------------
(1)拷贝资源到android文件夹下的assets文件夹,没有则新建。
(2)打开文件夹下cocos2d-x-2.2\projects\PrompaDroid\proj.android\jni下的Android.mk文件,如图,把所有cpp按照格式添加上
(3)管理员模式打开cmd,cd到android项目所在目录,运行下面两行命令:
takeown /f * /A /R icacls * /t /grant:r everyone:f
(4)管理员模式打开Cygwin Terminal,定位到android目录。
注意要修改 斜杠 反斜杠(骨头不分谁是谁)
错误 D:\Java\cocos2d-x-2.2\projects\PrompaDroid\proj.android
正确 D:/Java/cocos2d-x-2.2/projects/PrompaDroid/proj.android
然后输入:build_native.sh
然后祈祷成功编译,不要出bug吧。骨头要敲回车了,是否顺利呢?
等啊等啊。。。
(突然想到熊同学最近在xp下搭配环境,希望它顺利搞定)
期间跑到哲哲那,一起听了首歌 李玉刚女声的外文歌。
。。。
没意外,生成了so文件。
其实骨头到希望多出一些未知的bug,这样在解决过程中能理解的更透彻一些。
(5)用eclipse 打开项目。修改配置:
<1>C/C++ builder的build command为NDK目录下的ndk-builder
<2>添加C/C++ Builder Environment NDK_MODULE_PATH,值为cocos2dx目录和cocos2dx目录\cocos2dx\platform\third_party\android\prebuilt。
直接运行,编译时报错,学习的机会来了:
[2013-12-20 23:45:16 - PrompaDroid] Unable to resolve target 'android-8' [2013-12-20 23:47:38 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace. [2013-12-20 23:47:38 - PrompaDroid] Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace.首先,尝试clean一下再次编译。
一直很顺利,直到最后报这个:
[2013-12-20 23:45:16 - PrompaDroid] Unable to resolve target 'android-8' [2013-12-20 23:47:38 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace. [2013-12-20 23:47:38 - PrompaDroid] Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace. [2013-12-20 23:54:33 - PrompaDroid] Dx trouble writing output: already prepared [2013-12-20 23:54:34 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace. [2013-12-20 23:54:34 - PrompaDroid] Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace.
怀疑是android-8 版本问题,改成4.4高版本。
ok,手机上看到游戏了!
还算顺利。
小结:
0 - 简单的未必看得懂,看得懂的未必写得出,就比如这个demo里的地图卷轴,骨头觉得比较难读,难于自己重写。
1 - cocos2dx 这套东西骨头感觉配置起来还是比较麻烦的,很多东西其实可以简化,比如用python脚本生成项目那块,就可以改为直接输入必要的参数即可。
2 - 很多问题都是自己的问题:漏掉配置文件,漏掉cpp文件添加,标点空格斜杠反斜杠等等都是一些坑。
3 - 一次编译过不见得是一件好事,多遇到些不同的bug对理解整个框架非常有帮助。
现在是周六了。收工!
下一篇打算修改一下游戏代码,好好享受下修改带来的的快感:)
------------------- 飞船起飞--------------------
Cocos2dx游戏开发系列笔记13:一个横版拳击游戏Demo-中
Cocos2dx游戏开发系列笔记12:一个横版拳击游戏Demo-上
Cocos2dx游戏开发系列笔记11:解刨《战神传说》完结篇
Cocos2dx游戏开发系列笔记9:android手机上运行《战神传说》,并解决横竖屏即分辨率自适应问题
Cocos2dx游戏开发系列笔记8:开搞一个射击游戏《战神传说》//就个打飞机的
Cocos2dx游戏开发系列笔记7:一个简单的跑酷游戏《萝莉快跑》的消化(附下载)
Cocos2dx游戏开发系列笔记6:怎样让《萝莉快跑》的例子运行在vs和手机上
Cocos2dx游戏开发系列笔记5:继续润色《忍者飞镖射幽灵》
Cocos2dx游戏开发系列笔记4:怎样新加一个Scene类?
Cocos2dx游戏开发系列笔记3:牛刀小试->忍者飞镖射幽灵的Demo
Cocos2dx游戏开发系列笔记2:一个刚创建的cocos2dx中的demo里都有什么
Cocos2dx游戏开发系列笔记1:一个崭新的开始,cocos2dx2.2+ndkr9+Cygwin+vs2012游戏开发环境搭建
-------------------- 飞船降落--------------------
最后,骨头介绍一下陪在身边的哲哲(右边就是低调的哲哲)