五月天青色头像情侣网名,国产亚洲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ā))的評論 (共 條)

分享到微博請遵守國家法律
万载县| 乐山市| 资兴市| 大埔区| 望都县| 金沙县| 蓬莱市| 安宁市| 龙江县| 湘阴县| 化州市| 大竹县| 兴国县| 郸城县| 合川市| 改则县| 汕尾市| 盱眙县| 鄂州市| 靖远县| 公安县| 济阳县| 陕西省| 南汇区| 济阳县| 深水埗区| 宁城县| 甘德县| 平武县| 贵南县| 天津市| 镇安县| 宾川县| 云和县| 平塘县| 尼勒克县| 论坛| 阿克苏市| 布拖县| 陇西县| 宜良县|