Version: 2018.1


class in UnityEngine.Networking


Inherits from:MonoBehaviour

Switch to Manual


The NetworkManager is a convenience class for the HLAPI for managing networking systems.

For simple network applications the NetworkManager can be used to control the HLAPI. It provides simple ways to start and stop client and servers, to manage scenes, and has virtual functions that user code can use to implement handlers for network events. The NetworkManager deals with one client at a time. The example below shows a minimal network setup.

using UnityEngine;
using UnityEngine.Networking;

public class Manager : NetworkManager { public override void OnServerConnect(NetworkConnection conn) { Debug.Log("OnPlayerConnected"); } }

Static Variables

networkSceneNameThe name of the current network scene.
singletonThe NetworkManager singleton object.


autoCreatePlayerA flag to control whether or not player objects are automatically created on connect, and on scene change.
channelsThe Quality-of-Service channels to use for the network transport layer.
clientThe current NetworkClient being used by the manager.
clientLoadedSceneThis is true if the client loaded a new scene when connecting to the server.
connectionConfigThe custom network configuration to use.
customConfigFlag to enable custom network configuration.
dontDestroyOnLoadA flag to control whether the NetworkManager object is destroyed when the scene changes.
globalConfigThe transport layer global configuration to be used.
isNetworkActiveTrue if the NetworkServer or NetworkClient isactive.
logLevelThe log level specifically to user for network log messages.
matchesThe list of matches that are available to join.
matchHostThe hostname of the matchmaking server.
matchInfoA MatchInfo instance that will be used when StartServer() or StartClient() are called.
matchMakerThe UMatch MatchMaker object.
matchNameThe name of the current match.
matchPortThe port of the matchmaking service.
matchSizeThe maximum number of players in the current match.
maxConnectionsThe maximum number of concurrent network connections to support.
maxDelayThe maximum delay before sending packets on connections.
migrationManagerThe migration manager being used with the NetworkManager.
networkAddressThe network address currently in use.
networkPortThe network port currently in use.
numPlayersNumPlayers is the number of active player objects across all connections on the server.
offlineSceneThe scene to switch to when offline.
onlineSceneThe scene to switch to when online.
packetLossPercentageThe percentage of incoming and outgoing packets to be dropped for clients.
playerPrefabThe default prefab to be used to create player objects on the server.
playerSpawnMethodThe current method of spawning players used by the NetworkManager.
runInBackgroundControls whether the program runs when it is in the background.
scriptCRCCheckFlag for using the script CRC check between server and clients.
secureTunnelEndpointAllows you to specify an EndPoint object instead of setting networkAddress and networkPort (required for some platforms such as Xbox One).
serverBindAddressThe IP address to bind the server to.
serverBindToIPFlag to tell the server whether to bind to a specific IP address.
simulatedLatencyThe delay in milliseconds to be added to incoming and outgoing packets for clients.
spawnPrefabsList of prefabs that will be registered with the spawning system.
startPositionsThe list of currently registered player start positions for the current scene.
useSimulatorFlag that control whether clients started by this NetworkManager will use simulated latency and packet loss.
useWebSocketsThis makes the NetworkServer listen for WebSockets connections instead of normal transport layer connections.

Public Functions

GetStartPositionThis finds a spawn position based on NetworkStartPosition objects in the scene.
IsClientConnectedThis checks if the NetworkManager has a client and that it is connected to a server.
OnClientConnectCalled on the client when connected to a server.
OnClientDisconnectCalled on clients when disconnected from a server.
OnClientErrorCalled on clients when a network error occurs.
OnClientNotReadyCalled on clients when a servers tells the client it is no longer ready.
OnClientSceneChangedCalled on clients when a scene has completed loaded, when the scene load was initiated by the server.
OnDestroyMatchCallback that happens when a NetworkMatch.DestroyMatch request has been processed on the server.
OnDropConnectionCallback that happens when a NetworkMatch.DropConnection match request has been processed on the server.
OnMatchCreateCallback that happens when a NetworkMatch.CreateMatch request has been processed on the server.
OnMatchJoinedCallback that happens when a NetworkMatch.JoinMatch request has been processed on the server.
OnMatchListCallback that happens when a NetworkMatch.ListMatches request has been processed on the server.
OnServerAddPlayerCalled on the server when a client adds a new player with ClientScene.AddPlayer.
OnServerConnectCalled on the server when a new client connects.
OnServerDisconnectCalled on the server when a client disconnects.
OnServerErrorCalled on the server when a network error occurs for a client connection.
OnServerReadyCalled on the server when a client is ready.
OnServerRemovePlayerCalled on the server when a client removes a player.
OnServerSceneChangedCalled on the server when a scene is completed loaded, when the scene load was initiated by the server with ServerChangeScene().
OnSetMatchAttributesCallback that happens when a NetworkMatch.SetMatchAttributes has been processed on the server.
OnStartClientThis is a hook that is invoked when the client is started.
OnStartHostThis hook is invoked when a host is started.
OnStartServerThis hook is invoked when a server is started - including when a host is started.
OnStopClientThis hook is called when a client is stopped.
OnStopHostThis hook is called when a host is stopped.
OnStopServerThis hook is called when a server is stopped - including when a host is stopped.
ServerChangeSceneThis causes the server to switch scenes and sets the networkSceneName.
SetMatchHostThis sets the address of the MatchMaker service.
SetupMigrationManagerThis sets up a NetworkMigrationManager object to work with this NetworkManager.
StartClientThis starts a network client. It uses the networkAddress and networkPort properties as the address to connect to.
StartHostThis starts a network "host" - a server and client in the same application.
StartMatchMakerThis starts MatchMaker for the NetworkManager.
StartServerThis starts a new server.
StopClientStops the client that the manager is using.
StopHostThis stops both the client and the server that the manager is using.
StopMatchMakerStops the MatchMaker that the NetworkManager is using.
StopServerStops the server that the manager is using.
UseExternalClientThis allows the NetworkManager to use a client object created externally to the NetworkManager instead of using StartClient().

Static Functions

RegisterStartPositionRegisters the transform of a game object as a player spawn location.
ShutdownShuts down the NetworkManager completely and destroy the singleton.
UnRegisterStartPositionUnregisters the transform of a game object as a player spawn location.

Inherited members


enabledВключенное Поведение обновляется, выключенное Поведение не обновляется.
isActiveAndEnabledHas the Behaviour had enabled called.
gameObjectИгровой объект к которому прикреплён данный компонент. Компонент всегда прикреплён к игровому объекту.
tagТег данного игрового объекта.
transformThe Transform attached to this GameObject.
runInEditModeAllow a specific instance of a MonoBehaviour to run in edit mode (only available in the editor).
useGUILayoutDisabling this lets you skip the GUI layout phase.
hideFlagsShould the object be hidden, saved with the scene or modifiable by the user?
nameThe name of the object.

Public Functions

BroadcastMessageВызывает метод названный methodName на каждом MonoBehaviour этого game object-а или любого из его потомков.
CompareTagПомечен ли данный игровой объект тегом tag?
GetComponentВозвращает компонент типа type, если он прикреплен к игровому объекту и null, если не прикреплен.
GetComponentInChildrenВозвращает компонент типа type в GameObject или некоторого его потомка через поиск в глубину.
GetComponentInParentВозвращает все компоненты типа type из GameObject'а или из любого его родителя.
GetComponentsВозвращает все компоненты типа type в GameObject.
GetComponentsInChildrenВозвращает все компоненты типа type в GameObject или любому из его потомков.
GetComponentsInParentВозвращает все компоненты типа type в GameObject или любому из его родителей.
SendMessageВызывает метод с названием methodName в каждом MonoBehaviour в этом игровом объекте.
SendMessageUpwardsВызывает метод с именем methodName в каждом MonoBehaviour в этом игровом объекте и в каждом предке поведения.
CancelInvokeОтменяет все вызовы Invoke в этом MonoBehaviour.
InvokeВызывает метод methodName по истечении времени time секунд.
InvokeRepeatingВызывает метод methodName по истечении времени time секунд, затем повторяет вызов каждые repeatRate секунд.
IsInvokingЕсть ли какой то ожидающий вызов methodName?
StartCoroutineЗапуск корутины.
StopAllCoroutinesОстанавливает все корутины запущенные на этом MonoBehaviour.
StopCoroutineОстанавливает все корутины с именем methodName запущенные на этом MonoBehaviour.
GetInstanceIDReturns the instance id of the object.
ToStringReturns the name of the GameObject.

Static Functions

printLogs message to the Unity Console (identical to Debug.Log).
DestroyУдаляет GameObject, Component или Asset.
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoadMakes the object target not be destroyed automatically when loading a new scene.
FindObjectOfTypeReturns the first active loaded object of Type type.
FindObjectsOfTypeReturns a list of all active loaded objects of Type type.
InstantiateClones the object original and returns the clone.


boolDoes the object exist?
operator !=Compares if two objects refer to a different object.
operator ==Compares two object references to see if they refer to the same object.


AwakeФункция Awake вызывается когда экземпляр скрипта будет загружен.
FixedUpdateFrame-rate independent MonoBehaviour.FixedUpdate message for physics calculations.
LateUpdateLateUpdate вызывается каждый кадр, если Behaviour включен.
OnAnimatorIKОбратный вызов (Callback) для установки IK анимации (инверсной кинематики).
OnAnimatorMoveОбратный вызов для обработки перемещения анимации для модификации смещения корня.
OnApplicationFocusПосылается ко всем игровым объектам когда плейер получает или теряет фокус.
OnApplicationPauseПосылается ко всем игровым объектам когда плейер на паузе.
OnApplicationQuitSent to all game objects before the application quits.
OnAudioFilterReadIf OnAudioFilterRead is implemented, Unity will insert a custom filter into the audio DSP chain.
OnBecameInvisibleOnBecameInvisible is called when the renderer is no longer visible by any camera.
OnBecameVisibleOnBecameVisible is called when the renderer became visible by any camera.
OnCollisionEnterOnCollisionEnter вызывается, когда этот collider/rigidbody начал соприкосновение с другим rigidbody/collider.
OnCollisionEnter2DПередается когда входящий коллайдер контактирует с коллайдером данного объекта (только 2D физика).
OnCollisionExitOnCollisionExit вызывается, когда collider/rigidbody прекращает контакт с другим rigidbody/collider.
OnCollisionExit2DПередается, когда коллайдер другого объекта перестает соприкасаться с коллайдером этого объекта (только 2D физика).
OnCollisionStay:ref::OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider.
OnCollisionStay2DПередается каждый кадр, пока коллайдер другого объекта контактирует с коллайдером данного объекта (только 2D физика).
OnConnectedToServerCalled on the client when you have successfully connected to a server.
OnControllerColliderHitOnControllerColliderHit вызывается тогда, когда контроллер сталкивается с коллайдеров, во время выполнения метода Move.
OnDestroyDestroying the attached Behaviour will result in the game or scene receiving OnDestroy.
OnDisableThis function is called when the behaviour becomes disabled.
OnDisconnectedFromServerCalled on the client when the connection was lost or you disconnected from the server.
OnDrawGizmosImplement OnDrawGizmos if you want to draw gizmos that are also pickable and always drawn.
OnDrawGizmosSelectedImplement OnDrawGizmosSelected to draw a gizmo if the object is selected.
OnEnableThis function is called when the object becomes enabled and active.
OnFailedToConnectCalled on the client when a connection attempt fails for some reason.
OnFailedToConnectToMasterServerCalled on clients or servers when there is a problem connecting to the MasterServer.
OnGUIOnGUI is called for rendering and handling GUI events.
OnJointBreakВызывается при разрушении сустава, прикрепленного к такому же игровому объекту.
OnJointBreak2DCalled when a Joint2D attached to the same game object breaks.
OnMasterServerEventCalled on clients or servers when reporting events from the MasterServer.
OnMouseDown OnMouseDown is called when the user has pressed the mouse button while over the GUIElement or Collider.
OnMouseDragOnMouseDrag is called when the user has clicked on a GUIElement or Collider and is still holding down the mouse.
OnMouseEnterCalled when the mouse enters the GUIElement or Collider.
OnMouseExitCalled when the mouse is not any longer over the GUIElement or Collider.
OnMouseOverCalled every frame while the mouse is over the GUIElement or Collider.
OnMouseUpOnMouseUp is called when the user has released the mouse button.
OnMouseUpAsButtonOnMouseUpAsButton is only called when the mouse is released over the same GUIElement or Collider as it was pressed.
OnNetworkInstantiateCalled on objects which have been network instantiated with Network.Instantiate.
OnParticleCollisionOnControllerColliderHit вызывается тогда, когда контроллер сталкивается с коллайдеров, во время выполнения метода Move.
OnParticleTriggerOnParticleTrigger is called when any particles in a particle system meet the conditions in the trigger module.
OnPlayerConnectedCalled on the server whenever a new player has successfully connected.
OnPlayerDisconnectedCalled on the server whenever a player disconnected from the server.
OnPostRenderOnPostRender is called after a camera finished rendering the scene.
OnPreCullOnPreCull вызывается до того, как камера отсечёт сцену.
OnPreRenderOnPreRender вызывается перед тем, как камера начнёт рендерить сцену.
OnRenderImageOnRenderImage вызывается после того как весь рендеринг для отрисовки изображения завершиться.
OnRenderObjectOnRenderObject вызывается после того, как камера отрендерила сцену.
OnSerializeNetworkViewUsed to customize synchronization of variables in a script watched by a network view.
OnServerInitializedCalled on the server whenever a Network.InitializeServer was invoked and has completed.
OnTransformChildrenChangedThis function is called when the list of children of the transform of the GameObject has changed.
OnTransformParentChangedThis function is called when the parent property of the transform of the GameObject has changed.
OnTriggerEnterOnTriggerEnter вызывается, когда Collider other входит в триггер.
OnTriggerEnter2DПередается, когда другой обьект входит в триггер присоединенный к данному обьекту (только 2D физика).
OnTriggerExitOnTriggerExit вызывается, когда Collider other перестает соприкасаться с триггером.
OnTriggerExit2DПередается когда другой объект покидает триггер, присоединенный к данному объекту(только 2D физика).
OnTriggerStayOnTriggerStay is called once per physics update for every Collider other that is touching the trigger.
OnTriggerStay2DПередается каждый кадр, пока другой объект находится в триггере, присоединенном к этому объекту (только 2D физика).
OnValidateЭта функция вызывается когда скрипт загружается или изменяется значение в Инспекторе (Вызывается только в редакторе).
OnWillRenderObjectOnWillRenderObject is called for each camera if the object is visible and not a UI element.
ResetReset to default values.
StartStart is called on the frame when a script is enabled just before any of the Update methods are called the first time.
UpdateUpdate вызывается каждый кадр, если MonoBehaviour включен.