转载自MJ老师:http://blog.csdn.net/q199109106q/article/details/8587877
简介
我们这个专题要学习的是一款iOS平台的2D游戏引擎cocos2d,严格来说叫做cocos2d-iphone,因为cocos2d有很多个版本,我们学习的是iphone版本的。既然是个游戏引擎,那么它肯定是为了方便游戏开发而设计的。使用了cocos2d,你可以编写极少量的代码就做出非常cool的游戏,节省你的开发周期。当然,要想出一个大作,还必须下苦工。在iOS平台的游戏引擎还不止cocos2d一个,不过cocos2d还是比较受欢迎的,AppStore上已经有超过100个游戏是基于cocos2d,其中3个进入过TOP 10的排名,其中的StickWars曾排名第一。
提示:要想很好地消化这个专题,最好已经有一定的iOS应用程序开发基础
选择cocos2d的理由
1.免费
我们可以使用cocos2d的所有功能,它是完全免费的
2.开源
cocos2d-iphone是用OC编写的,我们可以好好学习下这个优秀游戏引擎的源代码。还可以对这个引擎进行一些修改或者拓展
3.集成了物理引擎
物理引擎可以为游戏中的物体赋予真实的物理属性,来实现碰撞、滚动、滑动或者弹跳等逼真效果(比如赛车类游戏或者保龄球游戏)。目前cocos2d集成的物理引擎有:Chipmunk和Box2d,Chipmunk是用C语言编写的,Box2d是用C++编写的,2个引擎的功能基本一样。《愤怒的小鸟》使用的是Box2d物理引擎,玩过这款游戏的朋友应该都能感受到Box2d物理引擎的强大
4.功能强大,开发难度低
cocos2d把底层的OpenGL ES代码封装地非常棒,我们用简单几句代码,就可以实现非常酷的图形效果、动画效果,它还集成了音频引擎,能够快速处理音频文件
cocos2d的各种版本
名称 | 语言 | 平台 |
---|---|---|
cocos2d-iphone | Objective-C | iOS、Mac OS X |
cocos2d-x | C++ | iOS、Android、Windows |
cocos2d-html5 | JavaScript | Web浏览器 |
cocos2d-android-1 | Java | Android |
创建第一个cocos2d程序
1.到官网http://www.cocos2d-iphone.org/download下载源代码
目前有2个稳定版本:1.0.1和2.0,1.0.1和2.0的API有好些不一样的地方,我们这里使用的是1.0.1
2.双击解压cocos2d-iphone-1.0.1.tar.gz
3.打开终端,进入到cocos2d-iphone-1.0.1目录中,输入指令./install-templates.sh -f -u安装cocos2d的模板到Xcode中
我的cocos2d-iphone-1.0.1目录完整路径是:/Users/apple/Downloads/cocos2d-iphone-1.0.1
观察上面的安装日志可以发现,其实这些模板文件是生成在:/Users/apple/Library/Developer/Xcode/Templates文件夹中(我的用户名叫apple)
直接删掉这2个cocos2d文件夹即可删除所有已安装的模板文件
4.安装完毕后,打开Xcode,新建项目时会发现多了一个模板
这里有3种模板,cocos2d_Box2d是集成了Box2d物理引擎的模板,cocos2d_chipmunk是集成了chipmunk物理引擎的模板。
我们选择第一个最简单的cocos2d模板
5.这里我的项目名称叫做HelloWorld
6.项目结构
Resources:存放游戏中使用到的一些资源,比如图片、音频文件等
Default.png:iOS加载应用程序时显示的图片,所以在每次运行cocos2d程序时会先看到这张图片
Icon.png:应用程序的图标
fps_images.png:cocos2d用来显示帧率的图片,不可以删除或修改
libs:存放着cocos2d以及第三方依赖库的源代码
7.运行项目,效果如下
左下角的60.2是指游戏帧率,帧率即每秒刷新多少帧,cocos2d默认设置是每秒刷新60帧,帧率影响着游戏的用户体验
到这里为止,我们的第一个cocos2d程序就搞定了