游戏客户端架构分析

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进行交互,减少程序的耦合性。


客户端架构