您好,登錄后才能下訂單哦!
cocos2d-x一些核心概念介紹
Cocos2d-x中有很多概念,這些概念很多來源于動畫、動漫和電影等行業,例如:導演、場景和層等概念,當然也有些有傳統的游戲的概念。Cocos2d-x中核心概念:導演, 場景,層,節點,精靈,菜單動作,效果,粒子運動,地圖,物理引擎。
下面我們介紹導演、場景、層、精靈、菜單概念以及對應的類,由于節點概念很重要我們會在下面詳細介紹,而其他的概念將在后面介紹。
導演類Director(v3.0之前是CCDirector)用于管理場景對象,采用單例設計模式,在整個工程中只有一個實例對象。由于是單例模式能夠保存一致的配置信息,便于管理場景對象。獲得導演類Director實例語句如下:
auto director = Director::getInstance();
導演對象職責如下:訪問和改變場景,訪問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,它表現出不同的效果。每個菜單項都有三個基本狀態:正常、選種和禁止。
更多精彩內容請關注史上最牛的cocos2d-x課程
《cocos2d-x手機游戲開發實戰》直播課程第一期
報名Cocos2d-x直播課程還送關東升老師iOS終身會員。
課程鏈接:http://edu.51cto.com/pack/view/id-13.html
會員鏈接:http://edu.51cto.com/member/id-3.html
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。