cocos2D(一)----第一个cocos2D程序
简单介绍
我们这个专题要学习的是一款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
感谢作者!
cocos2D(一)----第一个cocos2D程序的更多相关文章
- 三、第一个cocos2d程序的代码分析
http://blog.csdn.net/q199109106q/article/details/8591706 在第一讲中已经新建了第一个cocos2d程序,运行效果如下: 在这讲中我们来分析下里面 ...
- DirectX游戏编程(一):创建一个Direct3D程序
一.环境 Visual Studio 2012,DirectX SDK (June 2010) 二.准备 1.环境变量(如没有配置请添加) 变量名:DXSDK_DIR 变量值:D:\Software\ ...
- 第一个python程序
一个python程序的两种执行方式: 1.第一种方式是通过python解释器: cmd->python->进入python解释器->编写python代码->回车. 2.第二种方 ...
- 编写第一个MapReduce程序—— 统计气温
摘要:hadoop安装完成后,像学习其他语言一样,要开始写一个“hello world!” ,看了一些学习资料,模仿写了个程序.对于一个C#程序员来说,写个java程序,并调用hadoop的包,并跑在 ...
- 1.3 第一个C#程序
几乎没一门编程语言的第一个程序都叫“你好,世界”,所以先在visual studio 中创建一个Helloworld程序. 各部分的详细内容: Main方法是程序运行的起点,最重要的代码就写在Main ...
- 一个.net程序员的安卓之旅-Eclipse设置代码智能提示功能
一个.net程序员的安卓之旅-代码智能提示功能 过完年回来就决心开始学安卓开发,就网上买了个内存条加在笔记本上(因为笔记本原来2G内存太卡了,装了vs2010.SQL Server 2008.orac ...
- MFC-01-Chapter01:Hello,MFC---1.3 第一个MFC程序(02)
1.3.1 应用程序对象 MFC应用程序的核心就是基于CWinApp类的应用程序对象,CWinApp提供了消息循环来检索消息并将消息调度给应用程序的窗口.当包含头文件<afxwin.h>, ...
- Go! new Hello World, 我的第一个Go程序
以下语句摘自百度百科: Go语言是谷歌2009发布的第二款开源编程语言. Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进 ...
- 搭建java开发环境、使用eclipse编写第一个java程序
搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...
随机推荐
- myeclipse中断点调试
在代码最左端,也就是行号位置处双击.会出现一个实心小圆点.即增加的断点.debug启动程序,就会运行到断点处: 按F5是进去方法里面. 按F6是一步一步走, 按F7是跳出方法里面(按F5后再按F7就跳 ...
- .Net 自动属性结合手动属性
Model using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace ...
- Js将类数组转化为数组
说起伪数组,大家可能会想到arguments, 这个我们函数参数的一个类数组,是类数组的代表. 1.拥有length属性,可以使用下标来访问元素,这两点和数组相同. 2.不能使用数组的方法,他们不能使 ...
- GDSOI2019划水记
Day -9 北京集训结束,飞回广州浪两天后回校. Day -2 回家休整,打麻将技术进一步提高. Day 0 前往佛山入住酒店,论被人用大床房换双人房是什么体验??(一个人住真的舒服) 待在房间背模 ...
- gpasswd---指定要管理的工作组,及更改密码
gpasswd 命令详解 gpasswd命令是Linux下工作组文件/etc/group和/etc/gshadow的管理工具,用于指定要管理的工作组. 2.选项详解: -a : 添加用户到组 -d : ...
- 洛谷 P1850 换教室
P1850 换教室 题目描述 对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程. 在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上.在第 ii(1 \leq ...
- 【OC学习-8】存取器方法?getter和setter?事实上就是赋值和返回值的两种函数
我们在声明类的时候,有实例变量+方法(函数),这些实例变量假设默认的话都是protected类型,一般无法直接訪问.更别提赋值和调用了,所以就产生了两种函数,getter函数就是可以返回实例变量的值, ...
- Oracle442个应用场景-----------Oracle数据库物理结构
-------------------------Oracle数据库物理结构------------------------------- Oracle数据库物理结构 oracle的数据,实际 ...
- php 生成文件txt到指定目录
// 向文件追加写入内容 $site = PHP_EOL.date("Y-m-d H:i:s")."world"; //PHP_EOL换行 // 使用 FILE ...
- 3/18 Django框架 启动django服务
web框架:本质是socket服务端,socket通常也被称为"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信.web框架就是将 ...