【唠叨】
通過前面幾節的學習,相信大家都已經配置好了VS+cocos2dx2.2.3的環境,并且成功運作了官方的案例HelloWorld。
【3.x變化】
3.x的引擎目錄變化十分大,是以單獨列出來講。
請移步:http://shahdza.blog.51cto.com/2410787/1549803
一、窺探檔案目錄
要想學好cocos2dx,首先就需要對引擎目錄下的各個檔案有所了解。接下來,就讓我們先來分析一下cocos2dx2.2.3引擎的檔案目錄吧。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNvwVZ2x2bzNXak9CX90TQNNkRrFlQKBTSvwFbslmZvwFMwQzLcVmepNHdu9mZvwFVywUNMZTY18CX052bm9CX4tmeOdXUq1EMNpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DO2kjM1MjMxEzNwUDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
從目錄中我們主要了解一下一下幾個檔案:
cocos2dx: cocos2d-x引擎的核心部分,存放了引擎的大部分源檔案。
CocosDenshion:聲音子產品相關源檔案。
Debug.win32: 在Windows上調試輸出目錄。
extensions: 擴充目錄。包括了一些2.5D特效,網絡控制協定,以及一些GUI等等,當要用到這些擴充時,你需要using namespace cocos2d::extension。
external: 第三方目錄庫。主要包含了Box2D、chipmunk實體引擎,以及sqlite3輕型資料庫等。
samples: 官方樣例。包含了官方給出的Cpp、Javascript、lua的例子。其中Cpp/HelloCpp就是最簡單的例子。另外也包含了一個TestCpp項目,裡面涵蓋了cocos2dx引擎所有類的使用,是以很重要!
scripting: 腳本目錄。包含了javascript和lua的相關源檔案。對于用C++語言開發的可以忽略。
Template: 模闆目錄。提供了各種平台及IDE下建立的cocos2dx新工程的項目模闆。
Tools: 工具目錄。提供了各個平台下,建立cocos2dx新項目的腳本工具。
build-win32.bat: 編譯cocos2d-x引擎的windwos項目腳本。
cocos2d-win32.vc2010.sln:windows項目vs2010解決方案檔案。
二、Cocos2dx中的主要工程項目
在我們打開的 cocos2d-win32.vc2010.sln 解決方案中,可以看到引用了如下五個工程項目。
libBox2D //cocos2d-x-2.2.3\external\Box2D\proj.win32
libchipmunk //cocos2d-x-2.2.3\external\chipmunk\proj.win32
libcocos2d //cocos2d-x-2.2.3\cocos2dx\proj.win32
libCocosDenshion //cocos2d-x-2.2.3\CocosDenshion\proj.win32
libExtensions //cocos2d-x-2.2.3\extensions\proj.win32
相信根據上面介紹的檔案目錄,也能知道這些事上面東西了吧。沒錯,就是cocos2dx引擎的主要五大工程源檔案。在用python建立的新項目裡,至少也需要将libcocos2d和libCocosDenshion工程項目添加到新項目的解決方案中,并且在 通用屬性-> 架構和引用 中引用這些工程,才能運作新項目。
三、一些常用cocos2dx頭檔案的使用
#include "cocos2d.h" //這個應該是每個項目中都比不可少的頭檔案吧? 比不可少!
#include "Box2D/Box2D.h" //Box2d實體引擎
#include "SimpleAudioEngine.h" //聲音引擎
#include "cocos-ext.h" //第三方庫檔案
using namespace cocos2d; //cocos2d的命名空間
using namespace cocos2d::extension; //使用擴充類需要包含的命名空間
using namespace CocosDenshion; //聲音引擎的命名空間
//頭檔案目錄
cocos2d.h :cocos2d-x-2.2.3\cocos2dx\include
cocos2d.cpp :cocos2d-x-2.2.3\cocos2dx
SimpleAudioEngine.h :cocos2d-x-2.2.3\CocosDenshion\include
cocos-ext.h :cocos2d-x-2.2.3\extensions
Box2D、chipmunk、sqlite3 :cocos2d-x-2.2.3\external
轉載網址:http://blog.51cto.com/shahdza/1539452