这是网络系统使用的网络客户端类,其中包含用于连接到网络服务器的 NetworkConnection。
NetworkClient 处理连接状态、消息处理程序和连接配置。一个进程中可以同时有多个 NetworkClient 实例,但只有一个实例连接到使用衍生对象的游戏服务器 (NetworkServer)。
NetworkClient 有一个内部更新函数,它在其中处理来自传输层的事件。这包括异步连接事件、断开连接事件和来自服务器的传入数据。
NetworkManager 有一个 NetworkClient 实例,用于它启动的游戏,但 NetworkClient 可以单独使用。
| active | 如果网络客户端当前处于活动状态,则为 true。 |
| allClients | 当前进程中处于活动状态的所有网络客户端的列表。 |
| connection | 此客户端正在使用的 NetworkConnection 对象。 |
| handlers | 已注册的网络消息处理程序。 |
| hostPort | 网络客户端用于连接到服务器的本地端口。 |
| hostTopology | 此客户端正在使用的主机拓扑。 |
| isConnected | 该属性提供客户端的当前连接状态。 |
| networkConnectionClass | 创建新 NetworkConnection 时要使用的类。 |
| numChannels | 当前为此客户端配置的 QoS 通道数量。 |
| serverIp | 此客户端连接到的服务器的 IP 地址。 |
| serverPort | 此客户端连接到的服务器的端口。 |
| NetworkClient | 创建新 NetworkClient 实例。 |
| Configure | 此方法配置客户端的传输层设置。 |
| Connect | 将客户端连接到 NetworkServer 实例。 |
| ConnectWithSimulator | 使用模拟延迟和丢包将客户端连接到 NetworkServer 实例。 |
| Disconnect | 断开与服务器的连接。 |
| GetConnectionStats | 检索有关此连接上发送的网络数据包的统计信息。 |
| GetRTT | 获取此连接的返程时间。 |
| GetStatsIn | 获取客户端的入站网络统计信息。 |
| GetStatsOut | 获取客户端的出站网络统计信息。 |
| ReconnectToNewHost | 该方法供失去与旧主机的连接的客户端使用,以重新连接到游戏的新主机。 |
| RegisterHandler | 为特定消息类型注册处理程序。 |
| ResetConnectionStats | 将 NetworkClient.GetConnectionStats() 返回的统计信息重置为 0。 |
| Send | 该方法会向服务器发送带有消息 ID 的网络消息。此消息在通道 0 上发送,该通道默认为可靠通道。 |
| SendByChannel | 该方法会在指定通道上向服务器发送带有消息 ID 的网络消息。 |
| SendBytes | 该方法会将数据以字节数组的形式发送到客户端连接到的服务器。 |
| SendUnreliable | 该方法会在通道 1 上向服务器发送带有消息 ID 的网络消息,该通道默认为不可靠通道。 |
| SendWriter | 这会将 NetworkWriter 缓冲区的内容发送到指定通道上的连接服务器。 |
| SetMaxDelay | 设置允许传输发送缓冲区的最长时间。 |
| SetNetworkConnectionClass | 该方法设置创建新网络连接时使用的类。 |
| Shutdown | 关闭客户端。 |
| UnregisterHandler | 取消注册网络消息处理程序。 |
| GetTotalConnectionStats | 检索有关所有连接上发送的网络数据包的统计信息。 |
| ShutdownAll | 关闭所有网络客户端。 |