1、座標系
>螢幕座標系(uikit):原點在左上角!
>opengl座標系:原點在螢幕的左下角!
2、遊戲設計:director——scene——layer——sprite。
>ccdirector:導演類,相當於是遊戲策劃,負責整個遊戲的布局和執行規則的制定。
>ccscene:場景類,每個場景可以是乙個介面或乙個關卡。
>cclayer:圖層類,為了方便遊戲介面的渲染管理。
>ccsprite:精靈類,
小結:乙個導演類(ccdirector)可以指揮多個場景類(ccscene),乙個場景類裡面可以有多個圖層(cclayer),乙個圖層裡可以有多個精靈(ccsprite)被顯示。
3、節點類(ccnode)
>節點類是cocos2d-x裡的主要類,繼承自ccobject。
>任何需要華仔螢幕上的物件都是節點類。例如:最常用的ccscene,cclayer,ccsprite,ccmenu類都是繼承自ccnode類。
>節點類的主要功能:
>每個節點都可以有子節點。
>節點含有週期性**方法(schedule、unschedule等)。
>節點可以有動作(ccaction)。
>ccnode可以為它自己和子節點新增額外的功能。
>子節點可以有一些相對于父節點的動作(ccaction)。
4、場景類(ccscene)
>ccscene類繼承自ccnode類。
>cctransitionscene類是ccscene類的子類,是切換場景類,提供許多場景切換時的效果函式。
>不要在節點初始化的ini函式中呼叫replacescene函式,導演類不允許在乙個節點初始化的呼叫場景替換,否則會導致程式奔潰。
>壓入場景(pushscene)和彈出場景(popscene)。他們都可以用來顯示場景和保留當前場景並顯示新場景;不同的是他們不把舊場景從記憶體中釋放掉,這樣可以提高載入速度,這時需要注意,如果記憶體不足的話,建議使用replacescene函式。
5、圖層類(cclayer)
圖層類(cclayer)是ccnode類的子類,並且在此基礎上實現觸屏事件**(toucheventsdelegate)協議,可以實現ccnode類的供能,並且可以處理輸入,包括感測器,加速度感測器。
>每個遊戲場景都可以有很多個圖層,每一層負責各自的任務。
子類:>顏色布景層類(cclayercolor):包含cclayer的功能,並提供兩個拓展功能,可以為布景層新增顏色,以及設定不透明度。
>多層布景層類(cclayermultiplex):用來管理同乙個場景中的不同layer!
>選單類(ccmenu):ccmenu是乙個選單項的容器,用來裝載各種選單項。選單項可以是文字,!ccmenu還提供了alignitemsvertically和align-itemshorizontally等函式,分別表示垂直對齊和水平對齊。
>控制項類(cccontrol):
>拖動滑塊控制項類(cccontrolslider);
>顏色選擇盤控制項類(cccontrolcolourpicker);
>開關按鈕 控制項類(cccontrolswitch);
>按鈕控制項類(cccontrolbutton);
6、精靈類(ccsprite)
精靈類ccsprite是一張二維的物件,他可以用一張或者一張的一塊矩形部分來定義。
>貼圖類(cctexture2d);在openggl中稱為貼圖,在cocosd-x中cctextured就是物件的意思,可以通過它建立精靈等物件。cctexture2d類是精靈類和其相關基礎的基礎。
>精靈批處理類(ccspritebatchnode);
>精靈幀類(ccspriteframe);精靈幀類的概念是相對於動畫兒產生的。乙個精靈是固定節點,他可以擁有許多精靈幀,在他們之間切換就形成了動畫。
>精靈幀快取類(ccspriteframecache);精靈幀快取類ccspriteframecache用來儲存精靈幀,提前快取起來有助於提高程式的效率。ccspriteframecache是乙個單例模式,不屬於某個精靈類,是所有精靈共享使用的。
7、攝像機類(cccamera)
所有的節點都擁有乙個攝像機類cccamera。只有通過攝像機類,節點才能被渲染出來。當節點發生縮放旋轉和位置變化的時候,都需要覆蓋cccamera類,讓cccamera類重新渲染。
8、容器類
>ccarray類可以理解成是乙個陣列的容器,裝載的物件只要是ccobject的子類就可以。
>ccdictionary字典類;
9、拖動漸隱效果類(ccmotionstreak)
10、繪製圖形
11、時間排程
12、動作類(ccaction)
>有限時間動作(ccfinitetimeaction)
>瞬時動作(ccactioninstant):顧名思義,就是直接呼叫結果的動作,這中間不產生任何的動畫效果,其中執行**函式。
>延時動作(ccactioninterval):會在呼叫時形成動畫效果。
>跟隨(ccfollow)
>移動速度(ccspeed)
cocos2d學習筆記
粒子系統,使用系統自己的粒子系統的書寫方法 if cclayer init return false cctexture2d fire cctexturecache sharedtexturecache addimage fire.png ccparticlesystem firepartical ...
cocos2d 學習筆記
ccdirector類,簡稱director 導演 是cocos2d遊戲引擎的核心。director是乙個單例 它儲存著 cocos2d的全域性配置設定,同時管理著cocos2d的場景。director的主要用處如下 1.訪問和改變場景 2.訪問cocos2d的配置細節 3.訪問檢視 opengl,...
cocos2d 學習筆記 2
ccspritebatchnode的作用很像cclayer,因為它本身並不顯示在螢幕上。不過 你只能把ccsprite加入ccspritebatchnode。ccspritebatchnode 將乙個檔名作為引數,使用這個引數的原因是所有被新增進 ccspritebatchnode的ccsprite...