尊重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27094663

引擎简单介绍

Cocos2d-x 的原型是 Cocos2d,一个最早来源于几位 Python 开发人员在 PyWeek 竞赛中的作品。
目的是封装底层画图代码。简 化 2D 游戏的开发过程,避免每次都"又一次发明轮子"。
有了 Cocos2d,开发人员就能够把所有精力集中在游戏开发上,而不必关心画图的细节。
这个 Python 版本号的引擎最早公布于 2008 年 4 月。并一直保持版本号的更新。

在 Cocos2d 公布的同年 3 月。苹果公布了 iOS 的 SDK。同意第三方开发人员为 iOS 设备开发各种应用,
当中游戏应用是最热门的。

相同是为了简化游戏开发的难度,把大家从复杂的 OpenGL 编程中解放出来,

Ricardo Quesada 将 Cocos2d 从 Python 移植到了 iOS 上,并使用 iOS 的原生语言 Objective-C
重写了游戏引擎。


2008 年 11 月,Cocos2d-iPhone 引擎正式开源,发布了 0.1 版,为 2D 游戏开发提供了一个便利的方式。
伴随着 iOS 开发的大潮。Cocos2d-iPhone 引擎逐步完好,这得益于社区内世界各地开发人员的贡献。
而且其发展速度已经大大超过了 Python 版本号。因为 Cocos2d 的易用性,使用 Cocos2d-iPhone开发的游戏数量日益增多,至今已经有
2500 多个游戏在 App Store 上架。

后来。Android 的兴起大大扩展了移动终端的游戏市场,也由此产生了一个迫切的需求,
即游戏开发人员须要将游戏同一时候部署在两个热门平台上,可是为一个游戏维护两套代码的代价是很昂贵的,
尤其是在两个平台的主流语言、主流引擎还不统一的情况下。

因此。基于 C++语言、以 Cocos2d-iPhone 为基础开发的 Cocos2d-x 出现了,它凭借其从语言到接口的跨平台
特性。受到了跨平台游戏开发人员的广泛关注。使用 Cocos2d-x 开发的游戏已经能够做到"代码通用"。仅仅须要经过少量调整。就能够移植到包含 iOS、Android、Windows、Linux
在内的诸多平台上。

从本质上说,Cocos2d 是一个图形引擎。封装了复杂的图形接口,通过抽象出精灵、动作等概念,减少了游戏开发难度,简化了开发过程。Cocos2d-x
为保证游戏能方便地移植到不同平台上,又在此基础上做了非常多扩展。包含一套 Objective-C 风格的基础类系、平台无关的多点触摸协议、重力感应和音频系统等。


历经Cocos2d-x团队的的精心打磨,Cocos2d-x v3.0正式版本号终于公布!相比于去年9月份的Cocos2d-x v3.0-alpha版,正式版本号在渲染器、性能、兼容性、稳定性等方面都得到了质的提升,并新增对WinPhone8的支持。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGFvbWVuZ3podQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" style="font-family:KaiTi_GB2312; font-size:18px">

此外。引擎团队更分别针对C++、Lua、JavaScript三种编程接口的使用体验做了大量提升,

我们来看一下各语言的优化:

C++基础底层优化:新渲染器、新API、性能飞跃

增强Lua语言体验: 开发快,測试快,上线快

新产品线Cocos2d-JS:HTML5+JSB高效整合

CocoStudio 新增Code IDE:打造完整工具链

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGFvbWVuZ3podQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

接下来,我们将简介一下Cocos2d -x 3.0的特性。

流程控制(flow control):很easy管理不同场景(scene)之间的流程控制。

精灵(sprite):高速而方便的精灵用于显示一切可见的元素。

节点(node):基于树结构的分层组织方式,方便管理不同层次的游戏元素,同一时候提供了统一管理的计时器(scheduler)。

动作(action):应用于精灵或其它游戏元素的动画效果,能够组合成复杂的动作。如移动(move)、旋转(rotate)和缩放(scale)等。

特效(effect):包含波浪(wave)、旋转(twirl)和透镜(lens)等视觉特效。
平面地图(tiled map):支持矩形和六边形的平面地图。
菜单(menu):创建游戏中经常使用的菜单。
文本渲染(Text Rendering):支持标签和HTML标签动作
用户输入:提供接受用户触摸事件、传感器(如加速度计)等输入的简单解决方式。

文档(document):编程指南、API 參考、视频教学以及非常多简单可靠的測试例子。

MIT 许可:免费开放的协议。可是请谨记尊重版权。
基于Pyglet:没有外部的依赖
基于OpenGL:支持硬件加速
3D对象:MD2模型支持
脚本语言:支持Lua,JavaScript语言

Cocos2d-x v3.0:下载地址

Cocos IDE入门指南:点击查看


2、Cocos2dx 3.0游戏开发找小三之引擎简单介绍的更多相关文章

  1. 6、Cocos2dx 3.0游戏开发找小三之游戏的基本概念

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27689713 郝萌主友情提示: 人是习惯的产物,当你 ...

  2. 13、Cocos2dx 3.0游戏开发找小三之3.0中的Director :郝萌主,一统江湖

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27706967 游戏中的基本元素 在曾经文章中.我们具 ...

  3. 1、Cocos2dx 3.0游戏开发找小三之前言篇

    尊重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27094663 前言 Cocos2d-x 是一个通用 ...

  4. 3、Cocos2dx 3.0游戏开发找小三之搭建开发环境

    尊重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27107295 搭建开发环境 使用 Cocos2d- ...

  5. 12、Cocos2dx 3.0游戏开发找小三之3.0中的生命周期分析

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27706303 生命周期分析 在前面文章中我们执行了第 ...

  6. 18、Cocos2dx 3.0游戏开发找小三之cocos2d-x,请问你是怎么调度的咩

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/30478251 Cocos2d 的一大特色就是提供了事 ...

  7. 23、Cocos2dx 3.0游戏开发找小三之粒子系统:你那里下雪了吗?

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/30485919 春雨惊春清谷天,夏满芒夏暑相连, 秋处 ...

  8. 19、Cocos2dx 3.0游戏开发找小三之Action:流动的水没有形状,漂流的风找不到踪迹、、、

    重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/30478985 流动的水没有形状.漂流的风找不到踪迹. ...

  9. 7、Cocos2dx 3.0游戏开发找小三之3.0版本号的代码风格

    重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27691337 Cocos2d-x代码风格 前面我们已 ...

随机推荐

  1. TextView -无法调节字体、边框的距离

    今天调节一个字体边框距离,结果一直都实现不了,布局如下 <RelativeLayout xmlns:android="http://schemas.android.com/apk/re ...

  2. List-ArrayList 使用

    今天优化一段代码,如下 int num = 0; boolean skipAppend = false; int types_ext1[] = new int[] { ModuleType.TYPE_ ...

  3. linux设置tab键的宽度为4

    先cd 到~目录 ~$ cd ~$ vi .vimrc set nu

  4. 73.fseek与宽字符读取文件

    fseek //文件路径 ] = "1.txt"; //FILE *pf = fopen(path, "a+");//尾部添加,文件指针在尾部 //FILE * ...

  5. 最简单的实体手机测试移动端前端Vue Cli3搭建网站的方法

    手机和PC同用一个路由的情况下,直接在手机的浏览器上输入Ip: 192.168.1.100:8080 就能看到了. 其中192.168.1.100是PC的IP.不同的自己改下就好. 就这么简单.啥都不 ...

  6. 设计模式六大原则(五):迪米特法则(Law Of Demeter)

    定义: 一个对象应该对其他对象保持最少的了解. 问题由来: 类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大. 解决方案: 尽量降低类与类之间的耦合. PS: 自从我们接 ...

  7. 非常有用的sql脚本

    /*sql 语法学习*/ /*函数的学习---------------------------------------*/ 获取当前时间(时/分/秒):select convert(varchar(1 ...

  8. 疯狂html5讲义(二):HTML5简的经常使用元素与属性(二):html5新增的通用属性

    1.contentEditable属性 true时可直接编辑html元素里面的内容.且具有"可继承"的特点. 编辑后不要刷新页面.否则编辑的内容会丢失,能够通过该元素的innerH ...

  9. 建立一个 Openshift "Do-It-Yourself" 应用

    建立一个 Openshift "Do-It-Yourself" 应用 Openshift 的  "Do-It-Yourself" 就是自己可以编译定制 WEB ...

  10. UML学习之初步总结

    UML(Unified Modeling Language)即统一建模语言,是一种开放的方法,用于说明.可视化.构建和编写一个正在开发的.面向对象的.软件密集系统的制品的开放方法.UML展现了一系列最 ...