游戏客户端架构分析
1.UIManager
用来进行UI管理
2. CameraManager
管理摄像机控制视野的移动和是否需要跟随。当没有角色时相机处于漫游状态,有角色时需要控制相机跟随角色,由于是网络游戏,需要通过CameraManager控制相机连接那个角色。
3.AudioManager
控制声音的播放;获取声音的资源
4.PlayerManager
负责角色的产生,当进入战斗场景时,要将角色生成到场景中。
5.RequestManager
进行管理请求,所有请求继承自BaseRequest,RequestManager管理所有的请求,用来向服务器端发起请求。
6.ClientManager
用来管理与服务器端socket的连接,建立连接后通过RequestManager向服务器端发起请求
7.BaseManager
所有的Manager都继承自BaseManager,对每个Manager进行初始化和销毁。
8. GameFacade
所有Manager会在Facade进行管理, GameFacade既充当外观者模式,也充当中介者模式,用来管理所有的模块。使模块与模块之间不进行直接的交互,通过GameFacade进行交互,减少程序的耦合性。