亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • 17、Cocos2dx 3.0游戲開發找小三之內置的常用層:三劍客LayerColor、LayerGradient、Menu

17、Cocos2dx 3.0游戲開發找小三之內置的常用層:三劍客LayerColor、LayerGradient、Menu

發布時間:2020-08-10 19:03:13 來源:網絡 閱讀:362 作者:danielzzu 欄目:開發技術
重開發者的勞動成果,轉載的時候請務必注明出處:http://blog.csdn.net/haomengzhu/article/details/30477587

為了方便游戲開發者,Cocos2d-x 內置了 3 種特殊的 Layer;
具體如下所示:
LayerColor:一個單純的實心色塊。
LayerGradient:一個色塊,但可以設置兩種顏色的漸變效果。
Menu:十分常用的游戲菜單。

LayerColor 與 與 LayerGradient 這兩個層十分簡單,都僅僅包含一個色塊。
不同的是,前者創建的是一個實×××塊,而后者創建的是一個漸變色塊;
來看一下具體的效果顯示:
17、Cocos2dx 3.0游戲開發找小三之內置的常用層:三劍客LayerColor、LayerGradient、Menu

17、Cocos2dx 3.0游戲開發找小三之內置的常用層:三劍客LayerColor、LayerGradient、Menu

LayerColor擁有以下初始化方法:
如果采用指定了寬與高的初始化方法,則創建一個指定大小的色塊;
如果采用不指定大小的初始化方法,則創建一個屏幕大小的色塊。

LayerColor 的創建方法和初始化方法如下所示:
    /** creates a fullscreen black layer */     static LayerColor* create();     /** creates a Layer with color, width and height in Points */     static LayerColor * create(const Color4B& color, GLfloat width, GLfloat height);     /** creates a Layer with color. Width and height are the window size. */     static LayerColor * create(const Color4B& color);  CC_CONSTRUCTOR_ACCESS:     LayerColor();     virtual ~LayerColor();          bool init();     bool initWithColor(const Color4B& color, GLfloat width, GLfloat height);     bool initWithColor(const Color4B& color);

LayerGradient 與 LayerColor 類似,但是它在初始化時需要指定兩種顏色以及漸變的方向。
在初始化方法中,start參數為起始顏色,end 參數為結束顏色,而 v 是方向向量。
LayerGradient 的創建方法和初始化方法如下所示:
    /** Creates a fullscreen black layer */     static LayerGradient* create();      /** Creates a full-screen Layer with a gradient between start and end. */     static LayerGradient* create(const Color4B& start, const Color4B& end);      /** Creates a full-screen Layer with a gradient between start and end in the direction of v. */     static LayerGradient* create(const Color4B& start, const Color4B& end, const Point& v);  CC_CONSTRUCTOR_ACCESS:     LayerGradient();     virtual ~LayerGradient();          virtual bool init();     /** Initializes the Layer with a gradient between start and end.      * @js init      * @lua init      */     bool initWithColor(const Color4B& start, const Color4B& end);          /** Initializes the Layer with a gradient between start and end in the direction of v.      * @js init      * @lua init      */     bool initWithColor(const Color4B& start, const Color4B& end, const Point& v);

在色塊創建后,也可以通過下面列舉的方法來修改色塊大小:
    /** change width in Points*/     void changeWidth(GLfloat w);     /** change height in Points*/     void changeHeight(GLfloat h);     /** change width and height in Points     @since v0.8     */     void changeWidthAndHeight(GLfloat w ,GLfloat h);

Menu:游戲菜單
菜單是游戲不可或缺的一部分。
在 Cocos2d-x 中,菜單由兩部分組成,分別是菜單項和菜單本身。
MenuItem 表示一個菜單項,每個菜單項都是一個獨立的按鈕,定義了菜單的視覺表現和響應動作;
Menu 則是菜單,它負責將菜單項組織到一起并添加到場景中,轉換屏幕的觸摸事件到各個菜單項。

菜單項的創建通常需要規定普通狀態、按下狀態和被點擊后的響應對象以及響應方法。
下面我們以一個圖片菜單項為例介紹一下菜單項的創建,相關代碼如下:
  // Create a "close" menu item with close icon, it's an auto release object.   MenuItemImage *pCloseItem = MenuItemImage::create(    "CloseNormal.png",//普通狀態下的圖片    "CloseSelected.png",//按下狀態下的圖片    CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));//響應函數與對象   CC_BREAK_IF(! pCloseItem);
當點擊按鈕時回調到menuCloseCallback函數:
執行結束游戲邏輯:Director::getInstance()->end();

郝萌主友情提示:
多使用引擎提供的功能,會省不少時間與精力!

向AI問一下細節

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

AI

湘乡市| 张家界市| 子长县| 右玉县| 晋江市| 城市| 宁明县| 南靖县| 深水埗区| 沙洋县| 合阳县| 鄱阳县| 台南县| 方山县| 沂南县| 荔浦县| 永仁县| 屏东县| 武川县| 平泉县| 西丰县| 绥棱县| 铁力市| 射阳县| 澳门| 德州市| 恩施市| 龙游县| 喀喇沁旗| 苗栗市| 民权县| 中超| 綦江县| 平阴县| 延川县| 邵阳市| 苗栗县| 铅山县| 武胜县| 新野县| 云南省|