我是在今年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这个东西的更多相关文章

  1. 另一个维度:cocos-2d VS vue

    最近再看cocos-2d的东西,期间得到了同事和老板的支持,在此感谢.之前一直在做vue网页,现在看游戏cocos-2d这块,刚接触肯定有点不适应.cocos-2d多了很多感念:导演.场景.节点等.这 ...

  2. 我的iOS开发之路

    我终于开始写我的第一个cocos2d-iphone程序了.纪念一下 额,这是一个悲伤的故事.其实我从开始准备开发iOS已经好久了,从我装上Xcode开始到现在,应该已经有差不多一年的时间了把. 还记得 ...

  3. cocos2d(3.0)一些基础的东西

    1.创建项目后环境配置: 附加文件夹:加入 $(EngineRoot) $(EngineRoot)cocos $(EngineRoot)cocos\editor-support $(EngineRoo ...

  4. 学生信息管理系统(cocos2d引擎)——数据结构课程设计

    老师手把手教了两天半,看了一下模式,加了几个功能就大功告成了!!! 给我的感想就是全都是指针! 添加图片精灵: CCSprite*  spBG = CCSprite::create("&qu ...

  5. 如何优化cocos2d程序的内存使用和程序大小

    在我完成第一个游戏项目的时候,我深切地意识到"使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰".而我刚开始接触cocos2d的时候,社区里面的人 ...

  6. 如何优化cocos2d程序的内存使用和程序大小:第一部分

    译者: 在我完成第一个游戏项目的时候,我深切地意识到“使用cocos2d来制作游戏的开发者们,他们大多会被cocos2d的内存问题所困扰”.而我刚开始接触cocos2d的时候,社区里面的人们讨论了一个 ...

  7. 在cocos2d里面如何使用Texture Packer和像素格式来优化spritesheet

    免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作 ...

  8. 新的开始---cocos2d

    今天是一个新的开始,cocos2d的环境搭配好了,并且打包案桌apk的环境也搭配好了,安卓的这个搭配环境还是出了一点问题,前面弄了两个晚上(11-12.30)没弄出来,中间好几天都没有去弄,今天光棍节 ...

  9. cocos2d制作动态光晕效果基础——blendFunc

    转自:http://www.2cto.com/kf/201207/144191.html 最近的项目要求动态光晕的效果. 何谓动态光晕?之前不知道别人怎么称呼这个效果, 不过在我看来,“动态光晕”这个 ...

随机推荐

  1. winform(C#)拖拽实现获得文件路径

    设置Form的AllowDrop为true  private void Form1_DragDrop(object sender, DragEventArgs e)        {          ...

  2. String、StringBuffer、StringBuilder

    也说String. String:不可变字符序列. StringBuffer:线程安全的可变字符序列. StringBuilder:StringBuffer的非线程安全实现,JDK1.5+. publ ...

  3. 将日期和时间作为 struct tm型的值直接向二进制文件进行读写

    #include <stdio.h> #include <time.h> char data_file[]="D:\\%\\datetime.dat"; v ...

  4. 《用chsh选择shell》-linux命令五分钟系列之十二

    chsh命令用于修改你的登录shell. 1 我想知道我机器安装了哪些shell? 两种方法可以查看: 第一种: [rocrocket@wupengchong ~]$ chsh -l /bin/sh ...

  5. WordPress防暴力破解:安全插件和用.htpasswd保护WordPress控制面板

    正在用Wordpress的博主们一定知道最近全球兴起的一波黑客锁定Wordpress暴力破解控制面板密码的风波了,据CloudFlare执行长Matthew Prince所说,所谓的暴力密码攻击是输入 ...

  6. document模板

    http://bce.baidu.com/doc/CDS/GettingStarted.html

  7. linux下gdal的python包的安装

    由于python包是从C++包编译出来的,所以需要先下载源码进行编译安装.1. gdal下载http://download.osgeo.org/gdal/CURRENT/sudo ./configur ...

  8. Python,遍历目录下TXT

    import os #获取根目录,递归得到所以txt文件的路径 list_dirs = os.walk(os.curdir) txtfilenames=[] for root, dirs, files ...

  9. IIS10 设置支持wcf服务(.svc)

    感谢: http://www.cnblogs.com/dudu/p/3328066.html 如果提示web.config配置重复的话,很有可能是.net framework版本的问题,把IIS中的版 ...

  10. 常用排序算法集合-C实现

    之前熟悉C的时候写着玩的,就当做笔记用吧: #include<stdio.h> #include<stdlib.h> #include<string.h> #inc ...