溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

cocos2dx[3.2](2) ——淺析cocos2dx3.2引擎目錄

發(fā)布時(shí)間:2020-07-26 17:54:36 來(lái)源:網(wǎng)絡(luò) 閱讀:5129 作者:shahdza 欄目:游戲開(kāi)發(fā)

【嘮叨】

    3.x的引擎目錄與2.x的引擎目錄的差別是非常大的。學(xué)過(guò)2.x的朋友應(yīng)該會(huì)發(fā)現(xiàn)2.x的引擎目錄有點(diǎn)凌亂。而3.x主要是將引擎的各個(gè)文件按照用途進(jìn)行了分類(lèi),使得引擎目錄結(jié)構(gòu)更加清晰了。




【窺探3.x引擎目錄】

    

    要想學(xué)好cocos2dx,首先就需要對(duì)引擎目錄下的各個(gè)文件有所了解。接下來(lái),就讓我們先來(lái)分析一下cocos2dx3.2引擎的文件目錄吧。

cocos2dx[3.2](2) ——淺析cocos2dx3.2引擎目錄


    從目錄中我們主要了解一下以下幾個(gè)文件:

文件名說(shuō)明
build

官方編譯的項(xiàng)目解決方案。

集中放在這個(gè)文件中,如cocos2d-win32.vc2012.sln、Debug.win32、win32-msvc-2012-x86.cmd等。

這些在2.x版本是直接放在根目錄的。

cocos

集中了cocos2dx開(kāi)發(fā)中使用的所有源文件

除了cocos2dx引擎核心部分,還包含聲音引擎、物理引擎、網(wǎng)絡(luò)、GUI等。

extensions

擴(kuò)展目錄。

包括一些2.5D特效,網(wǎng)絡(luò)控制,以及一些GUI等,當(dāng)要用到這些擴(kuò)展時(shí):

#include "cocos-ext.h"

using namespace cocos2d::extension

external

第三方目錄庫(kù)

主要包含了Box2D、chipmunk物理引擎,以及sqlite3輕型數(shù)據(jù)庫(kù)等。

tests

官方樣例。

包含了官方的Cpp、lua例子。其中cpp-empty-test就是最簡(jiǎn)單的例子。

另外也包含了一個(gè) cpp-tests 項(xiàng)目,里面涵蓋了cocos2dx引擎所有類(lèi)的使用,所以很重要!

templates

模板目錄。

提供了各種平臺(tái)及IDE下創(chuàng)建的cocos2dx新工程的項(xiàng)目模板。

tools

工具目錄。

提供了各個(gè)平臺(tái)下,創(chuàng)建cocos2dx新項(xiàng)目的腳本工具。

其中:\tools\cocos2d-console\bin\cocos.py 就是用來(lái)創(chuàng)建cocos2dx新項(xiàng)目的。

download-deps.py自動(dòng)下載cocos2d-x所需的第三方插件(如果有的話)
setup.py配置cocos2dx的環(huán)境變量的腳本。




【cocos文件目錄】

    在3.x版本中,將cocos2dx引擎開(kāi)發(fā)所需要的幾乎所有的資源文件全部都放在了cocos文件夾中。

    并且對(duì)目錄的分類(lèi)更加的細(xì)致了,這使得引擎的結(jié)構(gòu)更加清晰。

cocos2dx[3.2](2) ——淺析cocos2dx3.2引擎目錄


    從文件目錄的結(jié)構(gòu)上,可以看出,分類(lèi)更加的清晰了。

文件名說(shuō)明
base

cocos2dx引擎的核心部分之一。

存放一些基礎(chǔ)類(lèi),如Ref、Director、Vector、Map、Value等。

2d

cocos2dx引擎的核心部分之一。

存放一些核心部分的類(lèi),如Sprtie、Layer、Label、Menu等。

3d

新增了對(duì)部分3D的支持。

有Sprite3D、Animate3D等,呵呵,可能將來(lái)要出cocos3dx了吧。

math

存放引擎中與數(shù)學(xué)相關(guān)的類(lèi)文件。

如坐標(biāo)類(lèi)Vec2.h、幾何類(lèi)CCGeometry.h(定義了Rect、Size)等。

renderer

引擎的渲染文件。

Texture2D、Renderer、Shader等。

deprecated

存放2.x中即將被廢棄的規(guī)則,目的是為了兼容2.x。

例如,使用typedef來(lái)對(duì)CC的兼容(如:typedef Label CCLabel)。

platform

不同平臺(tái)下的入口類(lèi)。

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

audio

聲音引擎相關(guān)源文件。

在2.x里是放在根目錄的CocosDenshion文件夾。

physics

物理引擎相關(guān)源文件。

chipmunk。

network

網(wǎng)絡(luò)相關(guān)相關(guān)源文件。

HttpClient、WebSocket。

ui

GUI相關(guān)源文件

editor-support

對(duì)編輯器的支持。

cocosbuilder、cocostudio、spine。

scriptinglua腳本相關(guān)源文件。
cocos2d.h

cocos2dx引擎核心頭文件,包含了引擎中的所有類(lèi)。

可以打開(kāi)它,查看引擎的所有源文件所在位置。




【引擎中主要庫(kù)】

    我們先來(lái)打開(kāi) build\cocos2d-win32.vc2012.sln 解決方案。

cocos2dx[3.2](2) ——淺析cocos2dx3.2引擎目錄

    可以看到,相比2.x來(lái)說(shuō),3.x的引擎庫(kù)的分類(lèi)更加詳細(xì)了。

庫(kù)文件說(shuō)明
libAudio聲音引擎庫(kù)。原名libCocosDenshion
libBox2D物理引擎庫(kù)
libchipmunk物理引擎庫(kù)
libcocos2dcocos2dx核心引擎庫(kù)
libExtensions擴(kuò)展庫(kù)
libCocosBuilder編輯器的支持庫(kù)
libCocosStudio編輯器的支持庫(kù)
libSpine編輯器的支持庫(kù)
libNetWork網(wǎng)絡(luò)庫(kù)
libGUIGUI界面庫(kù)
libLocalStorage本地?cái)?shù)據(jù)存儲(chǔ)方案庫(kù)
libLualua腳本庫(kù)




【頭文件目錄】


頭文件所在目錄
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\


常用頭文件:

#include "cocos2d.h"                 //這個(gè)應(yīng)該是每個(gè)項(xiàng)目中都比不可少的頭文件吧? 比不可少!
#include "Box2D/Box2D.h"             //Box2d物理引擎
#include "SimpleAudioEngine.h"       //聲音引擎
#include "cocos-ext.h"               //第三方庫(kù)文件
using namespace cocos2d;             //cocos2d的命名空間
using namespace cocos2d::extension;  //使用擴(kuò)展類(lèi)需要包含的命名空間
using namespace CocosDenshion;       //聲音引擎的命名空間



向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI