第五章 簡介
Unity 項目架構設計與開發管理
我們在之前花了兩篇文章對架構、架構和庫進行了簡單的介紹。
而我們到目前為止,已經寫了十四個示例了。
目錄如下:
我們并沒有去為了寫架構而寫架構,而是一個個實際問題地解決,最後解決出來了一個小架構 MonoBehaviourSimplify,又趁勢去了解了一點架構、架構和庫的概念,一切是那麼地自然。
那麼既然接觸了架構、架構和庫的概念,我們就可以接下來為搭建架構做準備了,而示例也積累了很多,整理的時機也成熟了,是以到此呢,我們的第二次學習收集示例的階段就可以停止了,而準備開始進行第二次整理。
不過這次有點不一樣,我們了解了架構、庫和架構,并且積累了相當多地編碼經驗,我們可以再多了解一點理論知識再進行整理也不遲。
說到這裡,筆者就要獻上筆者看了近十遍的學習材料。并且呢,在接下來的文章中,對其非常重要的内容進行強化和解讀。畢竟視訊看一遍就過去了,看過去之後很多人就該幹啥就幹啥了。裡邊的知識并沒有全部吸收,不過并不是一篇一篇地逐個看完,因為我們還要對目前的庫進行整理。
筆者可以很負責任地說,這個視訊改變了筆者的人生……
視訊位址:https://v.qq.com/x/page/d016340mkcu.html
不過盡管筆者會強化和解讀,但是各位還是最起碼看一遍,這樣再讀文章會了解得更加深刻。
而筆者呢,先給出一個視訊的内容的簡單總結,總結内容為我們在 Unity 中的常用架構總結。
如下
1.EmptyGO:
在 Hierarchy 上建立一個空的 GameObject,然後挂上所有與 GameObject 無關的邏輯控制的腳本。使用GameObject.Find() 通路對象資料。
缺點:邏輯代碼散落在各處,不适合大型項目。
2.Simple GameManager:
所有與 GameObject 無關的邏輯都放在一個單例中。
缺點:單一檔案過于龐大。
3.Manager Of Managers:
将不同的功能單獨管理。如下:
- MainManager: 作為入口管理器。
- EventManager: 消息管理。
- GUIManager: 圖形視圖管理。
- AudioManager: 音效管理。
- PoolManager: GameObject管理(減少動态開辟記憶體消耗,減少GC)。
- LevelManager: 關卡管理。
- GameManager: 遊戲管理。
- SaveManager: 配置&存儲管理。
- MenuManager 菜單管理。
4.将 View 和 Model 之間增加一個媒介層。
MVCS:StrangeIOC 插件。
MVVM:uFrame 插件。
5. ECS (Entity Component Based System)
Unity 是基于 ECS,比較适合 GamePlay 子產品使用。
還有比較有名的 Entitas-CSharp(https://github.com/sschmid/Entitas-CSharp)
今天内容就這些,我們下一篇再見,拜拜~
轉載請注明位址:涼鞋的筆記:liangxiegame.com
更多内容
- QFramework 位址:https://github.com/liangxiegame/QFramework
- QQ 交流群:623597263
- 2020屆Unity 涼鞋小班:
- 關注公衆号:liangxiegame 擷取第一時間更新通知及更多的免費内容。