简单介绍

我们这个专题要学习的是一款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

我们学习的版本号是用OC编写的cocos2d-iphone,尽管名字后面带个iphone,其有用cocos2d-iphone开发的游戏一样能够执行在iPad上面,仅仅要是iOS平台就可以

创建第一个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目录中(我的username叫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程序就搞定了

原文地址:http://blog.csdn.net/q199109106q/article/details/8587877

感谢作者!

最新文章

  1. Unity3D着色器Shader编程入门(一)
  2. URI、URL和URN
  3. 表单校验之datatype
  4. CentOS6.4 安装aria2多线程下载工具
  5. runtime/KVO等面试题
  6. cocos2d-x—使用shader使图片背景透明
  7. action参数绑定
  8. JS 函数作用域及变量提升那些事!
  9. DatasourceUtils类:获取连接池和数据库连接
  10. IIS中配置访问HTTPS
  11. 关于Java的特点之多态
  12. Linux安装配置Redis,CentOS7下安装Redis教程
  13. iOS 添加第三方.framework 打包上传iTunesConnect 遇到的坑
  14. 20165236 实验四 Android程序设计
  15. pc网页中嵌入百度地图
  16. 【转】Json判断是否存在某个属性和遍历各个属性和值
  17. MAC电脑里的休眠功能在哪里?
  18. cmake 强制链接静态库
  19. 【Git】将项目下的.git目录隐藏
  20. kubernetes 集群安全配置

热门文章

  1. UIWebView 无缝切换到 WKWebView
  2. log4j+slf4j迁移到log4j2+slf4j (Servlet3.0)
  3. Hive总结(五)hive日志
  4. vim基础学习之搜索功能
  5. android 图片特效处理之图片叠加
  6. 62.nodejs中的ejs模板学习
  7. Kinect 开发 —— 杂一
  8. ubuntu系统配置WinQQ
  9. 微信小程序从零开始开发步骤(五)轮播图
  10. 00084_Map接口