Unity 网络 之 Networking 实现简单的网络服务器和客户端通讯功能封装(可监听多个客户端)
在Unity中用 NetworkServer、NetworkClient 两个封装一个通用功能的类(包括建立连接,断开连接,发送不同类型数据,处理不同类型数据,注册处理数据的委托) 和 NetworkMessage (这里可以定义自己的消息类型,和重写消息数据结构)来解析数据信息,实现一个简单的网络通讯 demo。
因为是简单的封装,基本通讯可以满足使用,仅供参考,若有不对,请指出哈,谢谢。
实现原理
1、NetworkServer 构建相关服务器的封装类,例如 服务器监听 NetworkServer.Listen(),断开服务器所有连接NetworkServer.DisconnectAll(),关闭服务器NetworkServer.Shutdown(),服务器发送数据给所有客户端NetworkServer.SendToAll(),服务器取消注册事件 NetworkServer.UnregisterHandler(),服务器注册事件 NetworkServer.RegisterHandler()
2、NetworkClient 构建相关服务器的封装类,例如 客户端连接服务器 NetworkClient.Connect(),断开与服务器连接NetworkClient.Disconnect(),客户端发送数据给服务器NetworkClient.Send(),客户端取消注册事件 NetworkClient.UnregisterHandler(),客户端注册事件 NetworkClient.RegisterHandler()
3、继承 MessageBase 来定义自己的数据消息结构
1