91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • 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

建宁县| 舞钢市| 普兰店市| 富蕴县| 陇川县| 平邑县| 山西省| 麟游县| 桓台县| 南岸区| 连山| 徐水县| 修武县| 万宁市| 耒阳市| 盈江县| 株洲县| 漾濞| 汝南县| 图们市| 包头市| 比如县| 莱州市| 区。| 永州市| 福海县| 丰城市| 鹿泉市| 上杭县| 江门市| 天峨县| 博野县| 松桃| 富锦市| 梅河口市| 孝感市| 浦城县| 黑河市| 清原| 招远市| 安庆市|