• ClientScene
    • 描述
    • 静态属性
    • 静态方法

    ClientScene

    描述

    包含静态客户端信息和功能的客户端管理器。

    该管理器包含对跟踪的静态本地对象(如spawner注册)的引用。当它们自己没有注册时,它也具有客户端使用的默认消息处理程序。客户端连接设置为就绪后,管理器处理添加/删除玩家对象到游戏。

    ClientScene是一个单例,它有静态的便利方法,例如ClientScene.Ready()

    ClientSceneNetworkManager使用,但它本身可以使用。

    由于ClientScene管理客户端上的玩家对象,因此客户端需要添加玩家。当设置了auto-add-players时,NetworkManager会自动通过ClientScene执行此操作,但可以使用函数ClientScene.AddPlayer()通过代码完成。这会向服务器发送一个AddPlayer消息,并会为该客户端创建一个玩家对象。

    NetworkServer一样,ClientScene也理解本地客户端的概念。通过启动本地客户端(当服务器已经运行时),函数ClientScene.ConnectLocalServer()用于成为主机。

    静态属性

    属性说明
    localPlayers添加到游戏中的列表的所有玩家。
    objects这是一个已经在客户端产生的网络对象的字典。
    prefabs这是使用ClientScene.RegisterPrefab()在客户端上注册的预制件的字典。
    ready当客户端的连接已被设置为就绪时返回true
    readyConnection当前“就绪”的NetworkConnection对象。这是与生成对象的服务器的连接。
    reconnectId在旧主机丢失后客户端重新连接到新游戏主机时使用的reconnectId
    ReconnectIdHost旧主机重新连接到新主机时使用的常量ID。
    ReconnectIdInvalid无效的重新连接ID。
    spawnableObjects这是场景中被禁用的NetworkIdentity对象的字典,可能来自服务器的消息。

    静态方法

    方法说明
    AddPlayer这为该客户添加了一个玩家GameObject。这会导致将AddPlayer消息发送到服务器,并调用NetworkManager.OnServerAddPlayer。如果额外的消息被传递给了AddPlayer,那么OnServerAddPlayer将被包含消息内容的NetworkReader调用。
    ClearSpawners这将清除该客户端的已注册spawn预制和spawn处理函数。
    ConnectLocalServer创建本地客户端实例并将其连接到本地服务器。这使客户端成为“主机” - 在同一个进程中的客户端和服务器。
    DestroyAllClientObjects销毁客户端上的所有联网对象。
    FindLocalObject这将找到具有指定网络ID的本地NetworkIdentity对象。
    Ready表示客户端连接已准备好进入游戏。
    RegisterPrefab注册UNET生成系统的预制件。
    RegisterSpawnHandler这是一种先进的生成功能,用UNET生成系统注册自定义assetId
    RemovePlayer从游戏中移除指定的玩家ID。
    SendReconnectMessage向主机迁移期间使用的新主机发送重新连接消息。
    SetLocalObjectNetId是分配给游戏中具有NetworkIdentity组件的所有对象的唯一编号。
    SetReconnectId设置主机迁移后重新连接到新主机时ClientScene将使用的Id
    UnregisterPrefab删除用ClientScene.RegisterPrefab设置的注册spawn预制。
    UnregisterSpawnHandler删除已注册的ClientScene.RegisterHandler()注册的spawn处理函数。

    ?