最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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ā))的評論 (共 條)

分享到微博請遵守國家法律
道孚县| 万载县| 云阳县| 泗洪县| 岢岚县| 元阳县| 阿合奇县| 青龙| 阿克陶县| 云林县| 都昌县| 肃北| 哈巴河县| 华蓥市| 陆河县| 城口县| 商南县| 西青区| 湖口县| 甘孜县| 威远县| 惠水县| 马公市| 黄浦区| 鄂托克前旗| 丰顺县| 大姚县| 丰城市| 城固县| 合水县| 连城县| 凌云县| 万源市| 巫溪县| 尚志市| 夏河县| 普宁市| 阳城县| 峨边| 道孚县| 应城市|