中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Cocos2dx學習筆記4:導演(Director)

發布時間:2020-07-21 13:45:25 來源:網絡 閱讀:663 作者:frankxzb 欄目:游戲開發

Director是整個cocos2dx引擎的核心,是整個游戲的控制儀,游戲中的一些常用操作就是由Director來控制的,比如OpenGL ES的初始化,場景的轉換,游戲暫停繼續的控制,世界坐標和GL坐標之間的切換,對節點(游戲元素)的控制等,還有一些游戲數據的保存調用,屏幕尺寸的獲取等都要由Director類來管理控制的。

在Cocos2dx中把統籌游戲大局的類抽象為導演(Director),會經常調用進行一些控制,所以該Director利用了單例設計模式

通過前面我們創建的項目我們打開AppDelegate.cpp文件,可以發現里面在使用了Director的一些函數。

Cocos2dx學習筆記4:導演(Director)

 

 

getInstance();//返回一個導演的單例。

getOpenGLView();//獲取GLView。

setOpenGLView(glview);//設置GLView。

setDisplayStats(true);//左下角是否有顯示FPS。

setAnimationInterval(1.0 / 60);//設置FPS的值。

stopAnimation();//停止動畫。不進行繪制。停止主循環。 

getInstance()->startAnimation();//主循環觸發一次調用過stopAnimation才能調用這個函數。

 

我們通常用getInstance() 方法取得Director的實例。我們可以打開引擎的目錄D:\cocos2d-x-3.4\cocos\base下,找到類CCDirector,來查看該類的函數和用法。

最常見的一些函數有:

getWinSize () 返回OpenGL視圖的大小,以點為單位。

getVisibleSize () 返回可見OpenGL視圖大小,以點為單位。

getVisibleOrigin () 返回可見OpenGL視圖起始點,以點為單位。 

runWithScene (Scene *scene) 初始化游戲進入第一個場景調用它。

pushScene (Scene *scene) 暫停當前運行的場景,壓入到暫停的場景棧中。

popScene () 從堆棧中彈出了一個場景。

replaceScene (Scene *scene) 用新的場景替換運行場景。終止正在運行的場景。

 

通過剛剛列舉的一些常用函數我們可以發現幾個類似的函數。

那么getVisibleSize 和 getWinSize 和 getVisibleOrigin有什么不同?

getVisibleSize:獲得可視區域的大小。若是分辨率跟屏幕尺寸一樣大,則getVisibleSize便是getWinSize。

getWinSize:獲取屏幕大小。

getVisibleOrigin:表示可視區域的起點坐標。

另外還有一個就是Node節點里面的getContentSize()函數。

getContentSize : 來獲得節點(Node)原始的大小。只是邏輯尺寸,不是像素。

上面提到的這四個函數最容易讓人搞混淆,理解即可。

本文由閉眼就天黑整理編輯,轉載請注明:http://www.byjth.com/biji/23.html | 閉眼就天黑專欄_原創技術博客

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武安市| 六枝特区| 平塘县| 凤山县| 奉贤区| 荣昌县| 健康| 阿荣旗| 邹城市| 开鲁县| 高要市| 信宜市| 綦江县| 肥西县| 本溪市| 临潭县| 台东市| 林甸县| 西宁市| 太康县| 微博| 正阳县| 满城县| 仁化县| 博野县| 绩溪县| 乐亭县| 石台县| 商南县| 射阳县| 肇庆市| 福泉市| 锡林浩特市| 湖州市| 方城县| 古蔺县| 陆良县| 宝鸡市| 墨脱县| 皮山县| 六枝特区|