項(xiàng)目目錄分析
為了更快更好的學(xué)習(xí)Quick程序開發(fā),了解其項(xiàng)目結(jié)構(gòu)是很有必要的,所以下面我們就來依次看看引擎和新建項(xiàng)目的目錄結(jié)構(gòu)。
引擎目錄結(jié)構(gòu)分析
打開 Quick 安裝目錄,其結(jié)構(gòu)如下圖所示:

* build:該目錄是 Cocos2d-x 的項(xiàng)目存放目錄。
* cocos: 該文件夾中包含了大部分引擎的庫文件,其中包括:2d、3d、聲音、基礎(chǔ)庫、數(shù)學(xué)庫、物理庫等等一系列相關(guān)的類文件。
* docs:該文件夾下包含了引擎的API文檔、發(fā)布文檔(最新版本更改介紹,運(yùn)行環(huán)境要求,編譯環(huán)境要求及如何運(yùn)行測試用例的相關(guān)命令)、Cocos編程規(guī)范等等文檔。我們可以通過它查看引擎的代碼API,以及最新版本更改介紹,quick運(yùn)行環(huán)境要求,編譯環(huán)境要求及如何運(yùn)行測試用例的相關(guān)命令。里面的文件多是html和md格式的。
* extensions: 其中主要是GUI擴(kuò)展庫.
* external中包含物理引擎第三方庫,Box2D和chipmunk;數(shù)據(jù)庫第三方庫,sqlite3;網(wǎng)絡(luò)第三方庫,webp,websockets;以及一些其他第三方庫,像編碼轉(zhuǎn)換庫、數(shù)據(jù)格式庫等等。
* licenses里面包含了引擎中用到的各種許可證文件。LICENSE_SpiderMonkey,spider引擎中用到的SpiderMonkey-JS運(yùn)行環(huán)境,需要此許可證,該許可證適用于MPL/GPL/LGPL幾種許可證LICENSE_chipmunk,LICENSE_JS,LICENSE_lua等等。引擎在這些許可證下可以對相應(yīng)的源代碼進(jìn)行任意拷貝和修改。
* quick:這個是Quick引擎代碼。其中包含了創(chuàng)建各個平臺新工程的批處理工具,Quick框架的核心目錄,2dx和一些其他依賴的c++文件,模版工程,Quick所帶的例子等等Quick的核心文件。
* README.html/README.md:Quick的使用指南,關(guān)于Quick的安裝、使用、創(chuàng)建等等信息都可以出這里獲取,它其實(shí)相當(dāng)于docs內(nèi)文件的目錄。
* setup_mac.sh: 搭建Mac開發(fā)環(huán)境的腳本。
* setup_win.bat: 搭建Windows開發(fā)環(huán)境的腳本。
* tools:Quick用做luabinding的工具,可用來導(dǎo)出自定義的C++類。
* version:版本標(biāo)示。
新項(xiàng)目目錄結(jié)構(gòu)分析
打開新建項(xiàng)目的目錄,我們來分析下新建項(xiàng)目的目錄結(jié)構(gòu),其結(jié)構(gòu)如下圖所示:

* config.json: 項(xiàng)目信息配置文件。
* debug.log: 項(xiàng)目日志,即打印控制臺窗口輸出的所有日志文件。
* frameworks: 存放Cocos2d-x引擎核心代碼及各個平臺運(yùn)行時資源。
* res:存放項(xiàng)目資源的文件夾,也就是說,我們游戲開發(fā)中用到的所有圖片、字體、音頻等資源都放在這里。
* runtime:存放預(yù)編譯的運(yùn)行時庫。
* src:項(xiàng)目源碼所存放文件夾,即游戲中的所有的 .lua 文件都放在這里。
以上目錄中 res 和 src 文件夾是比較最要的,開發(fā)中我們也只需要對這兩個文件夾里的內(nèi)容進(jìn)行操作,就可以實(shí)現(xiàn)游戲的開發(fā)。
在新項(xiàng)目的src文件夾中,現(xiàn)在你是可以看到一些 .lua 文件的,這些就是我們工程的lua代碼。接下來我們簡單的介紹下src中各項(xiàng)的功能:
* cocos: cocos引擎代碼
* framework: quick的核心部分,在Cocos2d-x基礎(chǔ)上自己搭建的一套framework
* config.lua: 工程配置文件,包括分辨率適配等信息
* main.lua: 工程入口
* app: 工程的界面等文件,存放我們的游戲代碼
* MyApp.lua: 游戲的第一個界面
* scenes: 存放游戲各個場景代碼的文件夾
* MainScene: 游戲的第一個場景
在游戲開發(fā)中,需要修改和添加界面時,我們只需要在相應(yīng)的文件夾中添加場景就可以了。