cocos2d-x中有很多概念這些概念很多來源于動畫、動漫和電影等行業例如導演、場景和層等概念當然也有些有傳統的遊戲的概念。cocos2d-x中核心概念導演 場景層節點精靈菜單動作效果粒子運動地圖實體引擎。
下面我們介紹導演、場景、層、精靈、菜單概念以及對應的類由于節點概念很重要我們會在下面詳細介紹而其他的概念将在後面介紹。
導演類director(v3.0之前是ccdirector)用于管理場景對象采用單例設計模式在整個工程中隻有一個執行個體對象。由于是單例模式能夠儲存一緻的配置資訊便于管理場景對象。獲得導演類director執行個體語句如下
導演對象職責如下通路和改變場景通路cocos2d-x的配置資訊通路視圖對象暫停、繼續和停止遊戲轉換坐标。
director類圖

從類圖中還可以看到它有一個子類是displaylinkdirector。
場景類scene(v3.0之前ccscene)是構成遊戲的界面類似于電影中的場景。場景大緻可以分為以下幾類展示類場景。播放視訊或簡單的在圖像上輸出文字來實作遊戲的開場介紹、勝利和失敗提示、幫助介紹選項類場景主菜單、設定遊戲參數等遊戲場景。這是遊戲的主要内容。
從類圖可見scene繼承了node類node是一個重要的類很多類都從node類派生而來其中有scene、layer等。
層是我們寫遊戲的重點我們大約 99%以上的時間是在層上實作我們遊戲内容。層的管理類似于photoshop中的圖層它也是一層一層疊在一起。下面是一個簡單的主菜單界面是由三個層疊加實作的。
為了讓不同的層可以組合産生統一的效果這些層基本上都是透明或者半透明的。層的疊加是有順序的如圖所示從上到下依次是菜單層→精靈層→背景層。cocos2d-x是按照這個次序來疊加界面的。這個次序同樣用于事件響應機制即菜單層最先接收到系統事件然後是精靈層最後是背景層。在事件的傳遞過程中如果有一個層處理了該事件則排在後面的層将不再接收到該事件了。每一層又可以包括很多各式各樣的内容要素文本、連結、精靈、地圖等等内容。
下面是層類layer的類圖。
精靈類sprite(v3.0之前ccsprite)是遊戲中非常重要的概念它包括了敵人、控制對象、靜态物體和背景等。 通常情況它會進行運動運動方式包括了移動、旋轉、放大、縮小和動畫等。
下面是sprite類圖從圖中可見sprite是node派生類sprite包含很多類型例如實體引擎精靈類physicssprite也都屬于精靈。
菜單在遊戲在是非常重要的概念它提供操作的集合在cocos2d-x中菜單類是menu從類圖可見menu類派生于layer。
在菜單中又包含了菜單項menuitem從圖中可見菜單項menuitem有很多種形式的子類如menuitemlabel、menuitemsprite和menuitemtoggle它表現出不同的效果。每個菜單項都有三個基本狀态正常、選種和禁止。
更多内容請關注最新cocos圖書《cocos2d-x實戰 c++卷》
歡迎加入cocos2d-x技術讨論群257760386
《cocos2d-x實戰 c++卷》現已上線各大商店均已開售
《cocos2d-x實戰 c++卷》源碼及樣章下載下傳位址
歡迎關注智捷ios課堂微信公共平台