Cocos2d-x 学习之引擎介绍
Cocos2d-X是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C + +cocos2d-iPhone项目的版本。cocos2d-X发展的重点是围绕cocos2d跨平台。即其实现一次编码,再各平台分别编译后即可运行,不许为跨平台修改大量代码,不需要在一直方面花费很多时间和人力,目前cocos2d-x引擎已经可以跨以下平台:
● iOS
● Android
● Windows XP / Windows 7
● Meego
● BlackBerry
● Bada
● Marmalade (原名airplay, 一个c++跨平台框架)
其除跨平台外,相对其它的移动游戏引擎还有以下特点
● 易用性:易于学习掌握的API,大量示例代码和文档,有c++语言功底的新手只需画一个月就能上手完成简单游戏;
● 高效性:使用OpenGL ES 1.1最佳方式进行渲染;
● 灵活性:易于扩展,易于与其他开源库集成使用;
● 活跃的社区:全球化的活跃论坛。
● 成功商用:根据开源社区的保守统计,基于Cocos2d-x开发的游戏全球范围内已经突破一亿安装量。
Cocos2d-x 提供主要功能:
非常容易低进行不同场景之间的流程控制管理
菜单维护简单
支持标签和html标签的文本渲染
快速而方便的精灵
按照你的想法指挥精灵变化,可组合的动作,包括移动、旋转和缩放
支持包括波浪、旋转和透镜等特效
支持矩形和六边形的瓦片地图(Tiled Maps)
支持场景切换特效
支持粒子系统
支持硬件加速,即基于opengl es 1.1实现图形渲染系统
支持音效和背景音乐支持(CocosDenshion库)
基础物理引擎Box2d和chipmunk
根据不同屏幕分辨率自动缩放适配
Lua脚本支持。
关于cocos2d-x中的“X”,“X”有两意思,一个是表示“C++”,因为有时候,C++文件的后缀名可以用cxx代替,因此X便表示该开源项目使用C++编写,并且提供C++的API,二是表示“Cross”,该开源项目的目标是跨更多平台。
·什么是“X”cocos2d-X方式:◦有时候,我们写的cpp文件扩展CXX。“X”,标志着该项目是由C + +中,并提供C + +中的API编写的。 ◦“X”,也意味着交叉。这个开源项目的目标是让用户创建跨平台的代码。目前支持的平台是在iPhone,Android的,WoPhone,Win32平台上,但可根据要求提供更多的平台。
Cocos2d-x其他版本介绍
Cocos2d:是所有cocos2d引擎的家族的鼻祖,最早是有阿根廷一个叫Rcardo Quesada的人用Python脚本写的,其主要用来开发2d游戏和基于2d图形的任何应用,第一次发布是2008年2月29日,官方网站是http://www.cocos2d.org
Cocos2d-iphone:是基于cocos2d的思想开发的,第一版在2008年6月25号发布,其基本是与苹果ios一起成长起来的,凭借着使用object-c语言和SDK的无缝衔接的优势,获得了广大果粉开发者的追捧和喜爱,现在已成为苹果ios上2d游戏引擎的首选。官方网站是http://www.cocos2d-iphone.org
Cocos2d-x for xna :2012年2月17日,著名的开源社区Cocos2d发布Cocos2d-X for XNA版本。该游戏引擎针对微软最新移动操作系统Windows Phone 7平台,开发者可以采用C#语言开发基于Windows Phone平台的游戏,而无需学习XNA绘图接口。据悉,该游戏引擎由Cocos2d-X团队和OpenXLive合作开发。OpenXLive是Windows Phone上最早的游戏社交平台。其下载地址:http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Download
Cocos2d-windows:cocos2d的windows实现,使用GPL V3协议发布,该分支是由一位韩国人所在,但和大多数开源项目一样,在一次较大范围的提交之后就无小心了,没有留下文档,也没有更新,官方网站是:http://code.google.com/p/cocos2d-windows
Cocos3d:cocos2d的3D实现,由加拿大人Bill Holling开发和维护,cocos3d不是一个完全的3d引擎,而是在cocos2d的CCLayer层上面扩展出3d世界,以cocos2d-ihpone扩展包的形式运行,官方网站是:http://www.cocos3d.org
Cocos2d-andoid:是cocos2d的java实现,并且能够在Android上运行,使用BSD协议发布,官方网站是http://code.google.com/p/cocos2d-android
Cocos2d-javscript:cocos2d的javascript实现,由一个新西兰程序员建立和维护,其把cocos2d整套框架一到了Html5和javascript上面了,官方网站是:http://cocos2d-javascript.org
不过目前在cocos2d-x官方上已经有cocos2d-html5发布了。
ShinyCocos:把cocos2d-iphone绑了ruby实现,官方网站:http://github.com/funkaster/shinycocos
Cocos2d-x 学习之引擎介绍的更多相关文章
- 第1部分: 游戏引擎介绍, 渲染和构造3D世界
原文作者:Jake Simpson译者: 向海Email:GameWorldChina@myway.com ---------------------------------------------- ...
- Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍
Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...
- H2Engine服务器引擎介绍
H2Engine服务器引擎介绍 简介 H2Engine服务器引擎架构是轻量级的,与其说是引擎,个人觉得称之为平台更为合适.因为它封装的功能非常精简,但是提供了非常简洁方便的扩展机制,使得可以用C++. ...
- {MySQL存储引擎介绍}一 存储引擎解释 二 MySQL存储引擎分类 三 不同存储引擎的使用
MySQL存储引擎介绍 MySQL之存储引擎 本节目录 一 存储引擎解释 二 MySQL存储引擎分类 三 不同存储引擎的使用 一 存储引擎解释 首先确定一点,存储引擎的概念是MySQL里面才有的,不是 ...
- mysql 存储引擎介绍
一 存储引擎解释 首先确定一点,存储引擎的概念是MySQL里面才有的,不是所有的关系型数据库都有存储引擎这个概念,后面我们还会说,但是现在要确定这一点. 在讲清楚什么是存储引擎之前,我们先来个比喻, ...
- MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下 数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...
- Nancy 学习-视图引擎 继续跨平台
前面一篇,讲解Nancy的基础,以及Nancy自宿主,现在开始学习视图引擎. Nancy 目前支持两种 一个是SSVE 一个是Razor.下面我们一起学习. The Super Simple View ...
- [转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析
本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下 数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...
- 人工智能深度学习Caffe框架介绍,优秀的深度学习架构
人工智能深度学习Caffe框架介绍,优秀的深度学习架构 在深度学习领域,Caffe框架是人们无法绕过的一座山.这不仅是因为它无论在结构.性能上,还是在代码质量上,都称得上一款十分出色的开源框架.更重要 ...
随机推荐
- java基础讲解03-----java的结构
前面我们说了java是面向对象的语言,java程序的基本组成单元是类,类中又属性,方法两个部分,每个应用程序都会有一个mian函数,含有main()方法的类,我们称为主类 package Test; ...
- HTTP Cache怎样计算Age
这里的Age指的是响应头Age.以下内容有部分翻译,也有部分自己的理解.欢迎讨论. 我们用now表示当前主机的当前时间,用request_time表示缓存发起请求的时间,用response_time表 ...
- SICP 1.23-1.26体会
1.23 代码修改非常easy, 关键是时间. 电脑上算了一下. 100000000下面全是0. 開始还以为代码写错了. 最后没办法, 用1e10 1e11来计算. 发现比 1e11 1e12快1.2 ...
- [转]PHP运行出现Notice : Use of undefined constant 的完美解决方案
Notice: Use of undefined constant title - assumed 'title' in F:\wamp\www\load_myweb.php on line 22No ...
- 使用 P3P 规范让 IE 跨域接受第三方 cookie
前两天帮同事处理一个 js 跨域问题,使用 jsonp 跨域提交用户名密码请求,实现自动登录第三方网站,即 SSO(single-sign-on) 单点登录,一处登录处处登录.在 Chrome 下没问 ...
- sell学习
Linux Shell编程入门 从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Sh ...
- boost thread
#include <cassert> #include <iostream> #include <boost/ref.hpp> #include <boost ...
- 学习笔记:iOS 视图控制器(UIViewController)剖析
转自:http://www.cnblogs.com/martin1009/archive/2012/06/01/2531136.html 视图控制器在iOS编程中占据非常重要的位置,因此我们一定要掌握 ...
- Git-git 忽略 IntelliJ .idea文件
$ echo ‘.idea’ >> .gitignore $ git rm -rf .idea $ git add .gitignore
- Nmap笔记本
nmap -vv 192.168.1.100 -p1-65535 跑1-65535的端口并且设置对结果的详细输出 nmap -vv 192.168.1.1/8 -p 1433 --open 跑开放14 ...