正文

基 礎(chǔ) 知 識(shí)(3)

iPhone & iPad Cocos2D游戲開發(fā)實(shí)戰(zhàn) 作者:(美)伊特海姆


  

3.2  Director類

CCDirector類(簡稱Director)是整個(gè)cocos2d游戲引擎的核心。如果回想一下在2中學(xué)到的HelloWorld程序,就會(huì)想起cocos2d中很多初始化過程都包含了[CCDirectorsharedDirector]這個(gè)調(diào)用。Director被設(shè)計(jì)為單件,這個(gè)設(shè)計(jì)是非常合理的:它存儲(chǔ)了cocos2d中大量的全局配置信息,而且管理著所有的cocos2d場景。

Director的主要用途包括:

n●    切換場景

n●    存儲(chǔ)cocos2d配置信息

n●    訪問視圖(OpenGL  UIView UIWindow)

n●    暫停、恢復(fù)以及終止游戲

n●    在UIKit和OpenGL之間轉(zhuǎn)換坐標(biāo)

事實(shí)上,一共有4種Director可供選擇,但它們之間只有細(xì)微的差別。最常用的一種是CCDisplayLinkDirector,它的內(nèi)部采用蘋果公司官方的CADisplayLink類來實(shí)現(xiàn)。這是一個(gè)很好的選擇,但它只在iOS 3.1或更高的版本上可用。另一種選擇是,可以使用CCFastDirector。如果想同時(shí)使用cocos2d和Cocoa Touch視圖,就必須使用CCThreadedFastDirector,因?yàn)橹挥兴梢酝瑫r(shí)支持cocos2d和Cocoa Touch視圖。CCThreadedFastDirector的缺點(diǎn)在于耗電量比較大,如果你非常注重這一點(diǎn),那么應(yīng)選用CCTimerDirector。不過,不到萬不得已,最好不要用它,因?yàn)樗撬蠨irector中最慢的一個(gè)。

3.3  場景圖

場景圖有時(shí)也稱為場景層次體系,是一個(gè)由所有處于活動(dòng)狀態(tài)的cocos2d節(jié)點(diǎn)構(gòu)成的層次體系。除了場景以外,每個(gè)節(jié)點(diǎn)只有一個(gè)父節(jié)點(diǎn),同時(shí)可以擁有任意個(gè)數(shù)的子節(jié)點(diǎn)。

當(dāng)向節(jié)點(diǎn)添加節(jié)點(diǎn)時(shí),就是在構(gòu)建一個(gè)節(jié)點(diǎn)場景圖。場景圖的頂層通常是一個(gè)場景節(jié)點(diǎn),接下來是一個(gè)層節(jié)點(diǎn)。層節(jié)點(diǎn)在cocos2d中負(fù)責(zé)接收觸摸輸入和加速計(jì)輸入。


上一章目錄下一章

Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)