首页 > 代码库 > Cocos2d-X3.0 刨根问底(一)----- 概览

Cocos2d-X3.0 刨根问底(一)----- 概览

  罗嗦几句,本系列文章记录了小鱼(本人)自学Cocos2D-X的整个过程,主要从分析Cocos2D-x的源码方式来学习Cocos2d-x这样一个优秀的游戏引擎架构,本着不但要知其然还要知其所以然的学习态度来揭开Cocos2d-x的奥秘。阅读本文要求读者有一定的C++程序经验。

一、Cocos2d-x是啥玩意

  小鱼是听同事介绍,当前开发手机2d游戏多采用cocos2d-x引擎,开源且可以实现跨手机平台的快速移植,听到有这种神器,向百度求助好多介绍cocos2d-x的文章,在这里我不去引用了大家可以去百度,只是知道一点cocos2d-x是可以在多种操作系统下来开发2d游戏的一个引擎就可以了。

 

二、Cocos2d-x开发环境的搭建

  继续百度找到了一大堆关于cocos2d-x在windows环境下的搭建的文章,这里也不要赘述了。

  到官网 http://www.cocos2d-x.org/ 下载了最新版本的cocos2d-x3.0(要学就学新的cocos2d-x2.0,1.0都跳过了)

  解压在build文件夹里面找到了cocos2d-x在vs2012编译器下面的解决方案cocos2d-win32.vs2012.sln

  小鱼还在使用古老的vs2003没办法下载一个安装了一下vs2012(界面好丑,一点也不习惯 忍了)

  打开解决方案,编译,等了近10分钟全部编译通过。

 

三、从示例程序开始

在解决方案中可以看到如下的几个工程

        

 

从命名上可以看队形很整齐,简单的浏览一下

        Cpp-empty-test  应该是一个空的项目示例

        Cpp-tests                    应该是测试单元之类的东东,运行一下,原来是各种示例程序以后进行cocos2d-x程序开发应该会经常到这些示例程序里面来找代码片段了。

        libAudio              应该是封装音频播放功能的库

        libBox2D              毫无疑问 box2d物理引擎的封装

        libchipmunk       也是一个物理引擎的封装

        libcocos2d          从名称上看应该是我们要着重了解的Cocos2d-x库

        libCocosBuilder  应该是与cocosBuilder有关系的东西,具体是什么碰到了再去深入了解

        libCocosStudio   在官网下载cocos2d-x时看到了cocosstudio这个库应该是与cocos studio有关系的

        libExtensions     应该是一些扩展,展开文件去看一下,有关于Gui 和一些debug的工具

        libGUI               UI库,展开UIWidgets可以看到这个ui库有 Button,CheckBox, ImageView,LoadingBar等一些控件,还有富文本控件 RichText,太好了,游戏开发都会用到。

        libLocalStorage  打开文件扫几点,是对 sqlite 操作的封装。应该是支持数据持久化的库。

  liblua                 对Lua的支持库

  libNetwork        对网络的支持,展开扫一眼头文件,有对http,socket,websocket的支持,很给力。

  libSpine                  看了一下文件大概内容,应该是一些对cocos2d-x工具支持库碰到再说。

  lua-empty-test   lua项目的空工程

  lua-tests                lua应用的示例程序

 

  一共16个工程,核心是libcocos2d工程,从 cpp-empty-test的示例工程入手应该容易一些。

 

  运行一下cpp-empty-test

  

 

 

  看到了熟悉的 Hello World 下面我就从这里入手啦。