关于cocos2d这个东西
我是在今年6月份左右接触到cocos2d这个东西的,当时就是想写个小游戏,结果买书的时候误打误撞就买了cocos2d的书。
cocos2d是一个开源的游戏引擎,用于构建2d游戏,同时也可以用它写各种图形界面的交互应用。客观说,用cocos2d可以写任何程序。
至于引擎是什么,我也不是超级权威的人,也没有用过很多引擎,但是按照我的理解,引擎就是你写代码时候的一个附加工具。可以这样说,我用Objc写游戏,用Objc自带的类库,还有Apple提供的Cocoa Touch等官方类库,就可以写任何游戏,但是这样写游戏非常麻烦,每一个动作都要你自己组织代码。引擎就像是一个小助手,帮你把好多函数,好多东西都封装好了,封装成很多非常简单,易于理解的接口和函数。比如,如果你要显示一个人物图片在屏幕上,你只需要调用引擎的两个函数,输入图片文件的名称,然后输入显示图片的位置,引擎就会帮你把图片显示出来,非常简单容易理解。
有些人会觉得用引擎很低端,而且引擎添加了很多不必要的东西,有时候会拖慢应用的速度,反正就是用引擎不好。这个想法当然是对的,引擎本来就是一个不小的东西,能把这么多方法都封装好,肯定需要很多文件什么的,加载引擎的时候肯定也会拖慢应用的速度,毕竟我们大多数的应用都只会用到引擎的很小一部分东西,其它功能对我们这个应用可能都是没用的。但是对于一个刚刚接触游戏开发的人来说,我想引擎是一个很好的选择。因为引擎把很多东西都封装了,剩下给我们的接口都非常好理解,我们可以很快地熟练掌握使用引擎。还有,对于游戏开发经验为0的人来说,能够想清楚游戏的思路应该是他们最先考虑的问题,引擎的出现让他们能够很专心地想清楚游戏思路,因为有了思路,用引擎实现并不是一件非常难的事情。
好,说完了引擎,接下来就说说cocos2d
cocos2d最早是由Ricardo开发的,当时他用的是Python,只是想用Python很快地写一些游戏,结果就每个游戏都要重新写引擎,然后他就想要做一个通用的引擎。这样就酝酿出了cocos2d
cocos2d现在主要分为cocos2d-iphone和cocos2d-x
这个就是cocos2d-iphone的专有图标。
cocos2d-iphone是在Xcode环境下,使用Objc编写的,只使用于iOS和Mac OS X的开发
这个是cocos2d-x的专有图标
cocos2d-x是一个多平台的引擎,使用C++编写,所以可以在iOS、Android等多平台进行开发,可以在Xcode、Eclipse、VS等多个环境下进行书写
虽然有分两个分支,但是这两个的核心是相同的,所有的函数和接口都可以分别在这两个分支下找到,也就是说它们实现的功能是一样的,只是写的方式不一样。
其中,著名的捕鱼达人就是cocos2d的作品。
关于cocos2d这个东西的更多相关文章
- 另一个维度:cocos-2d VS vue
最近再看cocos-2d的东西,期间得到了同事和老板的支持,在此感谢.之前一直在做vue网页,现在看游戏cocos-2d这块,刚接触肯定有点不适应.cocos-2d多了很多感念:导演.场景.节点等.这 ...
- 我的iOS开发之路
我终于开始写我的第一个cocos2d-iphone程序了.纪念一下 额,这是一个悲伤的故事.其实我从开始准备开发iOS已经好久了,从我装上Xcode开始到现在,应该已经有差不多一年的时间了把. 还记得 ...
- cocos2d(3.0)一些基础的东西
1.创建项目后环境配置: 附加文件夹:加入 $(EngineRoot) $(EngineRoot)cocos $(EngineRoot)cocos\editor-support $(EngineRoo ...
- 学生信息管理系统(cocos2d引擎)——数据结构课程设计
老师手把手教了两天半,看了一下模式,加了几个功能就大功告成了!!! 给我的感想就是全都是指针! 添加图片精灵: CCSprite* spBG = CCSprite::create("&qu ...
- 如何优化cocos2d程序的内存使用和程序大小
在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人 ...
- 如何优化cocos2d程序的内存使用和程序大小:第一部分
译者: 在我完成第一个游戏项目的时候,我深切地意识到“使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰”.而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个 ...
- 在cocos2d里面如何使用Texture Packer和像素格式来优化spritesheet
免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作 ...
- 新的开始---cocos2d
今天是一个新的开始,cocos2d的环境搭配好了,并且打包案桌apk的环境也搭配好了,安卓的这个搭配环境还是出了一点问题,前面弄了两个晚上(11-12.30)没弄出来,中间好几天都没有去弄,今天光棍节 ...
- cocos2d制作动态光晕效果基础——blendFunc
转自:http://www.2cto.com/kf/201207/144191.html 最近的项目要求动态光晕的效果. 何谓动态光晕?之前不知道别人怎么称呼这个效果, 不过在我看来,“动态光晕”这个 ...
随机推荐
- oracle-行转列
<一>合并两个结果集,并且两个结果集的数据 根据条目自动归为一行结果集1 如下:SQL> select t1.fplx,t1.djje from yw_zjfpjl t1 ; FP ...
- Sprite Kit教程:初学者
作者:Ray Wenderlich 原文出处:点击打开链接 http://www.raywenderlich.com/42699/spritekit-tutorial-for-beginners 转自 ...
- NOIP2012 借教室 Splay初探
终于把区间操作的Splay搞明白了…… Splay的大致框架是这样的: [代码中的Zig-Zig和Zig-Zag操作其实是可以优化的,实际只需要3次passDown和3次update] templat ...
- 设置session的生命周期(php)
PHP中,Session变量保存在服务器端(默认以文件格式保存),而Session ID以cookie形式保存在客户端. 销毁session的方法有2种 第一种是通过程序 session_destor ...
- Html5游戏框架createJs的简单用法
声明:本文为原创文章,如需转载,请注明来源WAxes,谢谢!http://www.it165.net/pro/html/201403/11105.html 楼主记忆力不好,最近刚好用了一下create ...
- python【第六篇】面向对象编程
面向对象编程 一.编程范式:编程的方法论.程序员编程的“套路”及“特点”特点总结,抽象成方法.规范. 二.面向对象编程介绍: 1.描述 世界万物,皆可分类:世间万物,皆为对象:只要是对象,就肯定属于某 ...
- bzoj2180: 最小直径生成树
Description 输入一个无向图G=(V,E),W(a,b)表示边(a,b)之间的长度,求一棵生成树T,使得T的直径最小.树的直径即树的最长链,即树上距离最远的两点之间路径长度. Input 输 ...
- PHPStorm自动提示方法
第一种: /** * 一定要写@return static * @return static */ public static function getInstance() { $className ...
- ckeditor字数限制
var maxlength = 200; _editor=CKEDITOR.replace("ckeditor",{height:'130px'}); _editor.on('ke ...
- jQuery折叠风琴
这个效果用jQuery做是很方便的,根本不需要搞得很复杂. 网上有些效果DEMO不仅用了jQuery还引用一两个封装文件,真是匪夷所思. 最初想到了toggle: jQuery(document).r ...