Unity项目架构设计与开发管理
笔者是观摩刘钢先生讲解的Unity项目架构设计与开发管理后所总结记录的。
EmptyGO
- 将所有的代码放到一个空的游戏对象中;
- 使用
GameObject.Find()
来找到目标进行使用。
架构设计的雏形实现,缺点是当我们的项目越来越大的时候难以灵活管理;不适合大型项目。
Simple GameManager
GameManager.Instance.playSound("menu");
- 它是把EmptyGO做成一个单例来使用;
- 比较适合小型项目;
- 缺点是单一文件过于庞大;
- 不是即插即用。
Manager of Managers
- 使用一个主管理器自定义和管理所有的子管理器。
- 子管理器作为单例使用,可以轻松地相互协作。
MainManager
EventManager:消息传递管理
AudioManager:音效管理
GUIManager:图形视图管理
PoolManager:GO管理
LevelManager: 关卡管理
GameManager:核心机制管理
SaveManager:游戏进度管理
MenuManager:菜单行为动画管理
......
MVCS(StrageIOC)
优点: 将View和Model之间增加一个媒介层
IBinder.Bind<Key>().To<Value>();
MVVM(uFrame)
优点:
- 低耦合
- 可重用性
本作品由繁星陨辰采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。