Cocoa學習筆記Cocoa2d基礎學習 初學者必看

來源:互聯網
上載者:User

Cocoa學習筆記Cocoa2d基礎學習是本文要介紹的內容,編程人員應該對遊戲開發應該是由衷的熱愛,那麼本文可以幫你解決一些問題。如果你是初學者,本人覺得你有必要閱讀一番。不多說,來看詳細內容。

cocoa2d基礎

遊戲引擎:

一、情境CCScene

1.展示類情境  2. 選項類情境  3.遊戲情境

每個情境都是通過不同的層(layer)的疊加和組和來實現 不同的功能的。因此,通常生個情境都是有一個或者幾個層組成的。

二、層CCLayer

層是我們寫遊戲的重點,我們大約99%以上的時間是在層上實現我們的遊戲內容。

eg:一個遊戲主菜單畫面是由3個層疊加實現的:Background layer Animation layer Menu layer

為了讓不同的層可以組合產生統一的效果,這些層基本上都是透明或者半透明的,層的疊加有順序的,如同事件響應機制。

Cocoa2d從技術實現角度提供一些公用層:處理菜單的菜單層(Menu),處理顏色的顏色層(ColorLayer)等.

每一層又可以包含很多各式各樣的內容要素:文本(Label) 連結(HTMLLabel) 精靈(Sprite) 地圖等。

三、精靈 CCSprite

精靈是整個遊戲開發處理的主要對象,地方的飛機。坦克是系統AI控制的精靈,代表玩家控制的我方飛機也是精靈。甚至隨機飛過的一片雲,一隻鳥都是精靈。

特點:位置移動 旋轉 放大縮小 運動

四、導演 CCDirector

精靈不應該依賴層,層不應該依賴情境,情境不應該依賴流程。

導演代表流程,負責遊戲全過程的情境切換,接受層對象/情境的要求,按照預先設計好的流程來終止,壓橈,啟用當前情境,引導下一個情境。但導演通常只有一個,這個是間例(singleton).Coco2D架構已經預定義了該執行個體,不需建立,直接使用即可。

任何時間,只有一個Scene對象執行個體處於運行啟用狀態,該對象可以作為當前遊戲內容的對象的整體包容對象,對於Menu菜單對象,繼承Layer對象),通常屬於當前情境的主層。

Cocos2D-iPhone的實作類別

CCDirector

負責建立,管理應用程式、遊戲的主視窗,在特定的條件下顯示執行某個情境。

設定主程式視窗顯示內容。

管理,顯示情境。

Director 對象管理情境的方法主要有以下幾個:

1.  主程式啟勱,顯示第一個情境的方法:(void) runWithScene:(Scene*) scene ;

2. 掛起當前當前正在啟動並執行情境並壓棧到代執行情境隊列。將傳入情境設定為當前執行情境:(void) pushScene:(Scene*) scene;

3.  執行代執行情境隊列中的最後一個情境,當前情境被釋放:(void) popScene;

當代執行隊列中沒有代執行情境時,系統自勱退出,調用end 方法。

4.  直接用一個情境取代當前執行情境,釋放當前情境:(void) replaceScene:(Scene*) scene;返個氹數是經常使用的。

5.  結束情境運行:(void) end;

6.  暫停情境運行:(void) pause;畫面迓存在,時間任務停止。

7.  恢複情境運行:-(void) resume;

CCScene

目前的版本基本上沒有附加任何特殊功能,基本上可以看成是層Layer對象的一個容器。

CCLayer

功能:接收iPone上的螢幕觸摸touch操作輸入

接收動力感知輸入

直接提供了以下三個層:

ColorLayer顏色層(可以通過setContentSize設定層大小,改變顏色塊的尺寸)

Menu菜單層(執行個體必須是MenueItem類或者子類的執行個體)

MultiplexLayer複合層 可以包含多個層的複合層。

CCSprite

一個獨立的映像塊,通常情況它是運動的(Action):移動 旋轉 放大縮小 等效果。

我們可以設定Sprite的屬性讓它運動,也可以通過動作Action來達到同樣的目的。(95%內容是精靈實現類比)

1.緩衝映像內容,減少相同內容檔案的讀取次數

2.批量提交繪畫,減少OpenGL函數的調用次數。

迓有一個叫CCSpriteFrameCache 類。該類用亍管理勱畫效果的全部幀映像,該類直 接提供針對一個簡單的影像處理工具 http://zwoptex.zwopple.com/輸出檔案支援。

小結:Cocoa學習筆記Cocoa2d基礎學習 初學者必看的內容介紹完了,希望本文對你有所協助!如果對遊戲開發感興趣的友們,請參考編輯精選。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.