[Quick-Cococs2DX] Quick-Cocos2D-X學習 (二) Quick-Cocos2d-X 核心framework 目錄結構與功能介紹

Quick-Cocos2d-X 核心framework 目錄結構與功能介紹

   在前一篇文章 Quick-Cocos2D-X 併成功運行示例代碼 中我們介紹了 Windows 下,從下載,熟悉工程包中每個目錄的用處,成功使用 Quick-Cocos2d-X 所帶的Player成功運行示例代碼,並創建工程的快速啓動圖標。

   在本文中,我們將要去了解 Quick-Cocos2d-X 的核心,也就是之前文章中介紹的 famewrok 文件夾中的那些“.lua”。

   首先我們打開 framework 文件夾

014043758.png

   我們看到了,frameWork 中 有三個文件夾。分別是 clinet(客戶端)、server(服務)、shared(共享組件)。沒錯,整個 Quick-Cocos2d-X 框架就是由這三大部分來組成的。

   我們先打開 client

014102344.png

   client 中有11個.lua文件和2個文件夾,Cocos2dx 文件夾中包含了:CCLayerCCNode等等這些類的一些擴展(就是添加了一些框架的方法)。而 API 文件夾中就比較重要了,我們打開API文件夾。

014116602.png

gamenetwork

   中目前只有 OpenFeint 他是一個第三方的庫,它提供了社交功能,例如:排行榜。


GameState.lua

   用於保存遊戲的狀態,例如:存檔遊戲設置


Localize.lua

   用於進行遊戲本地化,現在的版本中裏面只包含文字的本地化,還沒有圖片本地化


Store.lua

   中提供了遊戲內的計費功能。


Timer.lua

   這個是基於 2D-X 中 scheduler 計時器的一個擴展,他可以方便的管理各個計時器,並添加了一些方便的功能,例如:100秒的時間,每5秒調用觸發一次計時器事件。


到這裏我們就介紹完 API文件夾中的功能了,我們回頭看下 client下的其他組件。


audio.lua

   中提供了我們客戶端中的背景音樂和音效的播放,音量控制等功能。


crypto.lua

   提供了我們常用的加密 AES、XXTEA、Base64、MD5。


device.lua

   提供了獲取當前平臺、獲取UUID打開URL提示框,這些平臺化的功能。


display.lua

   這個組件提供的功能是很重要的,包括場景精靈動畫這些遊戲中必要的組件,因這個中功能比較重要,後面我會專門來介紹這其中的使用方法。


luaj.lua

   提供了我們在Android平臺時調用JAVA,該組件可以調用 JAVA 中的靜態方法、JAVA調用Lua的方法、可以帶參數


luaOC.lua

   提供了我們在iOS平臺時調用Objective-C,該組件可以調用Objective-C中的靜態方法,可以帶參數。目前還沒有Objective-C調用LUA的函數。


network.lua

   提供了發送HTTP請求,目前只是這樣 。


scheduler.lua

   提供了2D-X中的一些計時器、回調功能。不過用了這個框架,推薦使用Timer

transition.lua

   提供了我們遊戲中常用的Move(移動),Fade(漸變)、Sequcene(動作序列) 等等動作相關的功能。


ui.lua

   提供了遊戲中Menu(菜單)、Label(標籤)等等用來交互的組件。


由此可見,Clinet 中的組件構成了遊戲的顯示,網絡連接、動畫、與平臺之間通信,等等功能。那麼我們看下 server 中又有什麼奧祕呢?


打開server

014159574.png

   可以鬆一口氣了,沒有 Client 中那麼多的組件了。。

   Server 中包含了6個.lua 和一個文件夾resty

   首先我們還是先來看 resty 中的內容

014222555.png

http.lua

   提供了我們需要用到 Http 中的一些相關方法,會有後續介紹。


mysql.lua

   提供常用的數據庫操作,在Lua中調用的接口。


url.lua

   提供了URL的解析相關Lua的接口。

   上述的這些組件只是爲了方便server調用。


   server這塊目前鵬飛還沒有過多的使用過,過後會陸續添加進來。下面我們來看下shared中提供了哪些組件。


   打開 shared

014238361.png

debug.lua

   提供了我們在程序中輸出log錯誤信息,並支持跳轉斷言等功能方便我們來進行一些錯誤的查找。


errors.lua

   提供了Debug.lua中輸出錯誤信息相關的支持。


functions.lua

   提供了我們在Lua中創建一個自定義類的快捷方法class、克隆等功能。重要


json.lua

   提供了解析JSON,還有生成JSON的方法。


ModelBase.lua

這個組件提供的功能很實用,它是一個數據模型,可以方便的從表中抽出例如:怪物的屬性 ,***力 這種數據。


到這裏,我們基本上把 Quick-Cocos2d-X目前所提供的功能都瞭解了一遍,大家可以看過這個之後瞭解下您所需要的功能,Quick-2D-X目前是否提供呢,如果沒有提供只能自己封裝了哦。


CocoStudio   討論學習羣:141444261

Cocos2D-X   討論學習羣:244959010


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章