Director是整個(gè)cocos2dx引擎的核心,是整個(gè)游戲的控制儀,游戲中的一些常用操作就是由Director來(lái)控制的,比如OpenGL ES的初始化,場(chǎng)景的轉(zhuǎn)換,游戲暫停繼續(xù)的控制,世界坐標(biāo)和GL坐標(biāo)之間的切換,對(duì)節(jié)點(diǎn)(游戲元素)的控制等,還有一些游戲數(shù)據(jù)的保存調(diào)用,屏幕尺寸的獲取等都要由Director類(lèi)來(lái)管理控制的。
創(chuàng)新互聯(lián)是一家專(zhuān)注于網(wǎng)站建設(shè)、網(wǎng)站制作與策劃設(shè)計(jì),大田網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:大田等地區(qū)。大田做網(wǎng)站價(jià)格咨詢(xún):13518219792在Cocos2dx中把統(tǒng)籌游戲大局的類(lèi)抽象為導(dǎo)演(Director),會(huì)經(jīng)常調(diào)用進(jìn)行一些控制,所以該Director利用了單例設(shè)計(jì)模式。
通過(guò)前面我們創(chuàng)建的項(xiàng)目我們打開(kāi)AppDelegate.cpp文件,可以發(fā)現(xiàn)里面在使用了Director的一些函數(shù)。
getInstance();//返回一個(gè)導(dǎo)演的單例。
getOpenGLView();//獲取GLView。
setOpenGLView(glview);//設(shè)置GLView。
setDisplayStats(true);//左下角是否有顯示FPS。
setAnimationInterval(1.0 / 60);//設(shè)置FPS的值。
stopAnimation();//停止動(dòng)畫(huà)。不進(jìn)行繪制。停止主循環(huán)。
getInstance()->startAnimation();//主循環(huán)觸發(fā)一次,調(diào)用過(guò)stopAnimation才能調(diào)用這個(gè)函數(shù)。
我們通常用getInstance() 方法取得Director的實(shí)例。我們可以打開(kāi)引擎的目錄D:\cocos2d-x-3.4\cocos\base下,找到類(lèi)CCDirector,來(lái)查看該類(lèi)的函數(shù)和用法。
最常見(jiàn)的一些函數(shù)有:
getWinSize () 返回OpenGL視圖的大小,以點(diǎn)為單位。
getVisibleSize () 返回可見(jiàn)OpenGL視圖大小,以點(diǎn)為單位。
getVisibleOrigin () 返回可見(jiàn)OpenGL視圖起始點(diǎn),以點(diǎn)為單位。
runWithScene (Scene *scene) 初始化游戲進(jìn)入第一個(gè)場(chǎng)景調(diào)用它。
pushScene (Scene *scene) 暫停當(dāng)前運(yùn)行的場(chǎng)景,壓入到暫停的場(chǎng)景棧中。
popScene () 從堆棧中彈出了一個(gè)場(chǎng)景。
replaceScene (Scene *scene) 用新的場(chǎng)景替換運(yùn)行場(chǎng)景。終止正在運(yùn)行的場(chǎng)景。
通過(guò)剛剛列舉的一些常用函數(shù)我們可以發(fā)現(xiàn)幾個(gè)類(lèi)似的函數(shù)。
那么getVisibleSize 和 getWinSize 和 getVisibleOrigin有什么不同?
getVisibleSize:獲得可視區(qū)域的大小。若是分辨率跟屏幕尺寸一樣大,則getVisibleSize便是getWinSize。
getWinSize:獲取屏幕大小。
getVisibleOrigin:表示可視區(qū)域的起點(diǎn)坐標(biāo)。
另外還有一個(gè)就是Node節(jié)點(diǎn)里面的getContentSize()函數(shù)。
getContentSize : 來(lái)獲得節(jié)點(diǎn)(Node)原始的大小。只是邏輯尺寸,不是像素。
上面提到的這四個(gè)函數(shù)最容易讓人搞混淆,理解即可。
本文由閉眼就天黑整理編輯,轉(zhuǎn)載請(qǐng)注明:http://www.byjth.com/biji/23.html | 閉眼就天黑專(zhuān)欄_原創(chuàng)技術(shù)博客
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。
名稱(chēng)欄目:Cocos2dx學(xué)習(xí)筆記4:導(dǎo)演(Director)-創(chuàng)新互聯(lián)
轉(zhuǎn)載注明:http://muchs.cn/article26/dhjecg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站導(dǎo)航、小程序開(kāi)發(fā)、域名注冊(cè)、做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
網(wǎng)頁(yè)設(shè)計(jì)公司知識(shí)