五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

unity 2D游戲開發(fā)教程4:(Unity事件廣播機(jī)制【觀察者模式】開發(fā))

2023-06-09 21:05 作者:zhouhongjoe  | 我要投稿



教案如下:

課程知識點(diǎn):??

在游戲開發(fā)中想象下下面場景。例如:一個關(guān)卡場景里面,我們會有管理UI的GUIManager,管理游戲的GameManger,管理輸入的InputManager等等,當(dāng)關(guān)卡結(jié)束的代碼里面,我們經(jīng)常寫如下代碼:

GUIManager.instance.gameOver(); //處理UI上面的關(guān)卡結(jié)束顯示

GameManger.instance.gameOver();//處理整體游戲關(guān)卡結(jié)束邏輯,例如游戲生命復(fù)原

InputManager.instance.gameOver();//讓手柄,鍵盤等不能輸入等

如果還有很多組件要關(guān)卡結(jié)束時候處理業(yè)務(wù)的畫,這種代碼寫法是不可取的。

這個時候我們就要使用【事件廣播機(jī)制】,也就是在Unity項目里面用 (程序設(shè)計模式:觀察者模式),來優(yōu)化上面這種不可理代碼。

??我們今天來學(xué)習(xí)下CorgiEngin里面的事件廣播機(jī)制 (程序設(shè)計模式:觀察者模式),來看下用觀察者模式如何處理上面的問題。

?? 下面我們就來實(shí)現(xiàn)一下,只要一個Class就能完成自己游戲里面的事件分發(fā)機(jī)制了

1:創(chuàng)建我們的 MMEventManager,大家記住CorgiEngin引擎里面,EventManager放在那里的

2:在這個EventManager里面使用了ExecuteAlways,我們說明下作用

3:根據(jù)CorgiEngin的注釋,使用Event的步驟1,讓我們的GUIManager繼承MMEventListener 接口并監(jiān)聽MMGameEvent事件,表示GUIManager 要進(jìn)行隊MMGameEvent事件的監(jiān)聽

4:根據(jù)CorgiEngin的注釋,使用Event的步驟2,隊GUIManager重寫On Enable and Disable方法,Enable方法寫開始監(jiān)聽,Disable里面寫停止監(jiān)聽

5:?介紹C#語法學(xué)習(xí)(擴(kuò)展方法)

6:介紹C#語法學(xué)習(xí)(方法體內(nèi)out? 引用參數(shù))

7:介紹 C#語法 (#define 來控制工具類的報錯與否)

8:根據(jù)CorgiEngin的注釋,使用Event的步驟3,實(shí)現(xiàn)MMEventListener 接口方法

9:測試創(chuàng)建一個按鈕來進(jìn)行觸發(fā)Event

10“最后我們讓我們的GameManager也來監(jiān)聽這個Event




unity 2D游戲開發(fā)教程4:(Unity事件廣播機(jī)制【觀察者模式】開發(fā))的評論 (共 條)

分享到微博請遵守國家法律
胶南市| 上饶市| 运城市| 峨眉山市| 富顺县| 错那县| 罗平县| 泽州县| 深州市| 台南市| 佛坪县| 红原县| 惠水县| 韶山市| 丰镇市| 拜城县| 灵川县| 绩溪县| 郓城县| 塔河县| 红原县| 陇南市| 武冈市| 建湖县| 凤台县| 孟津县| 宝山区| 建瓯市| 靖江市| 永吉县| 开江县| 卓资县| 鄂尔多斯市| 东丰县| 凤冈县| 桦南县| 石景山区| 井研县| 大埔区| 漳平市| 阜平县|