首页 > 代码库 > cocos2dx[3.x](2)——浅析cocos2dx3.2引擎目录

cocos2dx[3.x](2)——浅析cocos2dx3.2引擎目录

【唠叨】

    3.x的引擎目录与2.x的引擎目录的差别是非常大的。学过2.x的朋友应该会发现2.x的引擎目录有点凌乱。而3.x主要是将引擎的各个文件按照用途进行了分类,使得引擎目录结构更加清晰了。




【窥探3.x引擎目录】

    

    要想学好cocos2dx,首先就需要对引擎目录下的各个文件有所了解。接下来,就让我们先来分析一下cocos2dx3.2引擎的文件目录吧。

wKiom1QMPY2xzGrTAAGpUeF7jAI362.jpg


    从目录中我们主要了解一下以下几个文件:

文件名说明
build

官方编译的项目解决方案。

集中放在这个文件中,如cocos2d-win32.vc2012.sln、Debug.win32、win32-msvc-2012-x86.cmd等。

这些在2.x版本是直接放在根目录的。

cocos

集中了cocos2dx开发中使用的所有源文件

除了cocos2dx引擎核心部分,还包含声音引擎、物理引擎、网络、GUI等。

extensions

扩展目录。

包括一些2.5D特效,网络控制,以及一些GUI等,当要用到这些扩展时:

#include "cocos-ext.h"

using namespace cocos2d::extension

external

第三方目录库

主要包含了Box2D、chipmunk物理引擎,以及sqlite3轻型数据库等。

tests

官方样例。

包含了官方的Cpp、lua例子。其中cpp-empty-test就是最简单的例子。

另外也包含了一个 cpp-tests 项目,里面涵盖了cocos2dx引擎所有类的使用,所以很重要!

templates

模板目录

提供了各种平台及IDE下创建的cocos2dx新工程的项目模板。

tools

工具目录。

提供了各个平台下,创建cocos2dx新项目的脚本工具。

其中:\tools\cocos2d-console\bin\cocos.py 就是用来创建cocos2dx新项目的。

download-deps.py自动下载cocos2d-x所需的第三方插件(如果有的话)
setup.py配置cocos2dx的环境变量的脚本。




【cocos文件目录】

    在3.x版本中,将cocos2dx引擎开发所需要的几乎所有的资源文件全部都放在了cocos文件夹中。

    并且对目录的分类更加的细致了,这使得引擎的结构更加清晰。

wKiom1QMQOqQ7F1CAAHhyV_C1Wg013.jpg


    从文件目录的结构上,可以看出,分类更加的清晰了。

文件名说明
base

cocos2dx引擎的核心部分之一。

存放一些基础类,如Ref、Director、Vector、Map、Value等。

2d

cocos2dx引擎的核心部分之一。

存放一些核心部分的类,如Sprtie、Layer、Label、Menu等。

3d

新增了对部分3D的支持。

有Sprite3D、Animate3D等,呵呵,可能将来要出cocos3dx了吧。

math

存放引擎中与数学相关的类文件。

如坐标类Vec2.h、几何类CCGeometry.h(定义了Rect、Size)等。

renderer

引擎的渲染文件。

Texture2D、Renderer、Shader等。

deprecated

存放2.x中即将被废弃的规则,目的是为了兼容2.x。

例如,使用typedef来对CC的兼容(如:typedef Label CCLabel)。

platform

不同平台下的入口类。

CCApplication.h、CCGLView.h、CCGL.h、CCStdC.h

audio

声音引擎相关源文件。

在2.x里是放在根目录的CocosDenshion文件夹。

physics

物理引擎相关源文件

chipmunk。

network

网络相关相关源文件。

HttpClient、WebSocket。

ui

GUI相关源文件

editor-support

对编辑器的支持。

cocosbuilder、cocostudio、spine。

scriptinglua脚本相关源文件。
cocos2d.h

cocos2dx引擎核心头文件,包含了引擎中的所有类。

可以打开它,查看引擎的所有源文件所在位置。




【引擎中主要库】

    我们先来打开 build\cocos2d-win32.vc2012.sln 解决方案。

wKioL1QMRdKBxT6dAADWdqhMPIo362.jpg

    可以看到,相比2.x来说,3.x的引擎库的分类更加详细了。

库文件说明
libAudio声音引擎库。原名libCocosDenshion
libBox2D物理引擎库
libchipmunk物理引擎库
libcocos2dcocos2dx核心引擎库
libExtensions扩展库
libCocosBuilder编辑器的支持库
libCocosStudio编辑器的支持库
libSpine编辑器的支持库
libNetWork网络库
libGUIGUI界面库
libLocalStorage本地数据存储方案库
libLualua脚本库




【头文件目录】


头文件所在目录
cocos2d.hcocos2d-x-3.2\cocos\
CCDeprecated.hcocos2d-x-3.2\cocos\deprecated\
SimpleAudioEngine.hcocos2d-x-3.2\cocos\audio\include\
HttpClient、WebSocketcocos2d-x-3.2\cocos\network\
cocosbuilder、cocostudio、spinecocos2d-x-3.2\cocos\editor-support\
CocosGUI.hcocos2d-x-3.2\cocos\ui
cocos-ext.hcocos2d-x-3.2\extensions\
Box2D、chipmunk、sqlite3cocos2d-x-3.2\external\



本文出自 “夏天的风” 博客,请务必保留此出处http://shahdza.blog.51cto.com/2410787/1549803

cocos2dx[3.x](2)——浅析cocos2dx3.2引擎目录