文章
前言
大家好,我是思航。在之前的文章我们介绍过cocos2d-x-html5启动流程等一系列文章,但是缺少了一篇介绍引擎工程的目录结构。今天就趁着放假补一下,同时在这里也祝大家国庆快乐~
一、工程结构
因为我们看的是html版本,所以我们关注的是coco2d-x-.3.17.2/web这个文件夹,既然目录结构见下图。
通过上面截图,我们逐一介绍一下/web这个文件夹下的文件
1.1 web/AUTHORS.txt
该文件记录了这个引擎的主要开发人员,以及每个作者的贡献内容。
1.2 web/Base64Images.js
该文件定义了cc._loadingImage、cc._fpsImage、cc._loaderImage这三个值。这几个值可以不用关注。
1.3 web/bower.json
Bower 是 twitter 推出的一款包管理工具,管理模块之间的关系。使用了bower的项目会生成 bower.json文件。这里也不展开介绍。
1.4 web/CCBoot.js
该文件里面定义了cc 这个全局命名空间,同时定义了cc.game、cc.loader等一系列类。后期游戏启动就是调用了cc.game.run来启动这个游戏(加载js文件等操作),具体可以见之前的文章【cocos2d-x-html5之游戏启动】
1.5 web/CCDebugger.js
该文件里面,定义了以下变量
cc._LogInfos 对象:各个错误的枚举,具体可以见文件内容
cc._logToWebPage 方法:日志显示在网页上
cc._formatString 方法:把参数字符串话(如果参数是object类型通过JSON.stringify转化)
cc._initDebugSetting 方法:根据project.json文件的debugMode值,来初始化debug设置
1.6 web/CHANGELOG.txt
该文件记录了引擎每个版本的修。
1.7 web/cocos
该文件夹存放了cocos引擎代码,具体子文件夹等后面具体展开介绍
1.8 web/extensions
该文件夹为扩展文件夹,主要是studio相关
1.9 web/external
该文件夹存放外部的第三方库
1.10 web/jsb_apis.js
该文件记录了native绑定的接口
1.11 web/licenses
存放了许可文件
1.12 web/moduleConfig.json
每个模块对应哪些js文件的配置
1.13 web/README.mdown
使用文档(读我)
1.14 web/template
示例工程
1.15 web/tools
这个文件夹还没细研究
二、总结
通过上面简单的介绍,我们简单了解引擎的文件结构。其中主要为
web/cocos、 web/extensions、 web/external 这三个文件夹,后面我们继续根据模块介绍每个功能的实现和对应源码解析