Version: 2017.3

NetworkIdentity

class in UnityEngine.Networking

/

Hereda de:MonoBehaviour

Cambiar al Manual

Descripción

The NetworkIdentity identifies objects across the network, between server and clients. Its primary data is a NetworkInstanceId which is allocated by the server and then set on clients. This is used in network communications to be able to lookup game objects on different machines.

El NetworkIdentity es usado para sincronizar la información del objeto con la red. Solo el servidor debe crear instancias de los objetos que tengan NetworkIdentity, porque de lo contrario no estarán conectados apropiadamente al sistema.

For complex objects with a hierarchy of subcomponents, the NetworkIdentity must be on the root of the hierarchy. It is not supported to have multiple NetworkIdentity components on subcomponents of a hierarchy.

NetworkBehaviour scripts require a NetworkIdentity on the game object to be able to function.

The NetworkIdentity manages the dirty state of the NetworkBehaviours of the object. When it discovers that NetworkBehaviours are dirty, it causes an update packet to be created and sent to clients.

The flow for serialization updates managed by the NetworkIdentity is:

* Cada NetworkBehaviour tiene una mask dirty ( sucia). Esta mask (mascara) está disponible dentro de OnSerialize como syncVarDirtyBits

* Cada SyncVar en un script NetworkBehaviour es asignado un bit en la mask dirty.

* Cambiar el valor de SyncVars causa el bit para ese SyncVar en ser configurada en la mask dirty (sucia)

* Alternativamente, el llamado de SetDirtyBit() escribe directamente a la mask dirty

* NetworkIdentity objects are checked on the server as part of it’s update loop

* Si cualquiera de los NetworkBehaviours (Comportamientos de red) en una NetworkIdentity están dirty (sucios), entonces un paquete de UpdateVars es creado para ese objeto

* El paquete UpdateVars es poblado al llamar OnSerialize en cada NetworkBehaviour en el objeto

* Los NetworkBehaviours (comportamientos en red) que NO están dirty (sucios) escriben un cero al paquete para sus bits dirty

* Los NetworkBehaviours (Comportamientos en red) que están dirty (sucios) escriben su dirty mask, luego los valores de las SyncVars que han cambiado

* If OnSerialize returns true for a NetworkBehaviour, the dirty mask is reset for that NetworkBehaviour, so it will not send again until its value changes.

* El paquete UpdateVars es enviado para alistar a los clientes que están observando el objeto

En el cliente:

* un paquete UpdateVars es recibido para un objeto

* La función OnDeserialize se llama para cada script NetworkBehaviour en el objeto

* Cada script NetworkBehaviour en el objeto lee una dirty mask.

* Si la dirty mask para un NetworkBehaviour es cero, las funciones OnDeserialize devuelve sin leer más

* If la dirty mask es un valor diferente a cero, entonces la función OnDeserialize lee los valores para las SyncVars que corresponden a los bits dirty (sucios) que están configurados

* Si hay funciones hook (enganche) de SyncVar, estas son invocadas con su valor leído del flujo (stream).

Variables Estáticas

clientAuthorityCallbackA callback that can be populated to be notified when the client-authority state of objects changes.

Variables

assetIdIdentificador único usado para encontrar a los assets fuente cuando el servidor genera sobre los clientes.
clientAuthorityOwnerEl cliente tiene autoridad para este objeto. Este será null si ningún cliente tiene autoridad.
connectionToClientLa UConnection asociada con esta instancia de NetworkIdentity. Solo es válida para objetos de jugador en el servidor.
connectionToServerLa UConnection asociada con esta instancia de NetworkIdentity. Solo es válida para objetos de jugador en un cliente local.
hasAuthorityDevuelve true si este objeto es su versión autoritaria en la aplicación distribuida en red.
isClientDevuelve true si está ejecutándose como un cliente, y este objeto fue generado por un servidor.
isLocalPlayerDevuelve true si este objeto es el que representa al jugador en la máquina local.
isServerDevuelve true si está ejecutándose como un servidor, el cual generó al objeto.
localPlayerAuthorityLocalPlayerAuthority significa que el cliente del jugador "dueño" tiene autoridad sobre su propio objeto de jugador.
netIdIdentificador único para esta instancia particular de objeto, usado para hacer seguimiento a objetos entre los clientes de red y el servidor.
observersConjunto de conexiones de red (jugadores) que pueden ver a este objeto.
playerControllerIdEl id del jugador asociado con este objeto.
sceneIdIdentificador único para objetos de NetworkIdentity dentro de una escena.
serverOnlyValor booleano para hacer que este objeto exista únicamente cuando el juego esté ejecutándose como un servidor (o anfitrión).

Funciones Públicas

AssignClientAuthorityThis assigns control of an object to a client via the client's NetworkConnection.
ForceSceneIdColocar obligadamente el ID de escena a un valor específico.
RebuildObserversOcasiona que sea reconstruido el conjunto de jugadores que pueden ver a este objeto. La función de callback OnRebuildObservers será invocada en cada instancia de NetworkBehaviour.
RemoveClientAuthorityRemoves ownership for an object for a client by its conneciton.

Delegados

ClientAuthorityCallbackThe delegate type for the clientAuthorityCallback.

Miembros heredados

Variables

enabledEnabled Behaviours are Updated, disabled Behaviours are not.
isActiveAndEnabledHas the Behaviour had enabled called.
gameObjectEl game object que tiene este componente adjunto. Un componente siempre está adjunto a un game object.
tagEl tag de este game object.
transformThe Transform attached to this GameObject.
runInEditModeAllow a specific instance of a MonoBehaviour to run in edit mode (only available in the editor).
useGUILayoutDesactivar esto el deja a usted omitir la fase del diseño del GUI.
hideFlags¿Debería el objeto estar oculto, guardado con la escena o modificable por el usuario?
nameEl nombre del objeto.

Funciones Públicas

BroadcastMessageLlama al método denominado methodName de todos los MonoBehaviour en este game objecto en cualquiera de sus hijos.
CompareTag¿Este game object está etiquetado con tag?
GetComponentDevuelve un componente de tipo type si el game object tiene a alguno adjuntado, o null si no lo tiene.
GetComponentInChildrenRetorna el componente de tipo type en el GameObject o cualquiera de sus hijos utilizando depth first search (busqueda de profundidad).
GetComponentInParentRetorna el componente de tipo type en el GameObject o cualquiera de sus padres.
GetComponentsRetorna todos los componentes de tipo type en el GameObject.
GetComponentsInChildrenRetorna todos los componentes de tipo type en el GameObject o cualquiera de sus hijo.
GetComponentsInParentRetorna todos los componentes de tipo type en el GameObject o cualquiera de sus padres.
SendMessageLlama al método denominado methodName en cada MonoBehaviour de este game object.
SendMessageUpwardsLlama al método denominado methodName en todos los MonoBehaviour de este juego y en todos los ancestros del behaviour.
CancelInvokeCancela todas las llamadas de Invocación en este MonoBehaviour.
InvokeInvoca el método methodName en tiempo de segundos.
InvokeRepeatingInvoca el método methodName en time segundos, luego repetidamente cada repeatRate segundos.
IsInvokingHay una invocación methodName pendiente?
StartCoroutineComienza una co-routine.
StopAllCoroutinesPara todas las coroutines ejecutándose en este comportamiento.
StopCoroutinePara la primera coroutine llamada methodName, o la coroutine almacenada en routine ejecutando este comportamiento.
GetInstanceIDDevuelve el id de la instancia del objeto.
ToStringReturns the name of the GameObject.

Funciones Estáticas

printLos mensajes Logs a la consola de Unity (idéntico a Debug.Log).
DestroyElimina un gameobject, componente o asset.
DestroyImmediateDestroys the object obj immediately. You are strongly recommended to use Destroy instead.
DontDestroyOnLoadHace que el objeto target no sea destruido automáticamente cuando se cargue una nueva escena.
FindObjectOfTypeDevuelve el primer objeto activo cargado de tipo type.
FindObjectsOfTypeDevuelve una lista de todos los objetos activos cargados de tipo type.
InstantiateClona el objeto original y devuelve el clon.

Operadores

bool¿Existe el objeto?
operator !=Compare si dos objetos se refieren a un objeto diferente.
operator ==Compara dos referencias de objeto para ver si se refieren al mismo objeto.

Mensajes

AwakeAwake se llama cuando la instancia del script está siendo cargada.
FixedUpdateEsta función se puede llamar cada frame de framerate fijo, si el MonoBehaviour está habilitado.
LateUpdateLateUpdate se llama cada frame, si Behaviour está habilitado.
OnAnimatorIKCallback para ajustar el IK (inverse kinematics) de animación
OnAnimatorMoveCallback para procesar movimientos de animación para modificar movimiento raíz.
OnApplicationFocusEnviado a todos los GameObjects cuando el jugador obtiene o pierde foco.
OnApplicationPauseEnviado a todos los GameObjects cuando la aplicación pausa.
OnApplicationQuitEnviado a todos los game objects antes de que la aplicación se salga.
OnAudioFilterReadSi OnAudioFilterRead es implementado, Unity insertará un filtro personalizado a la cadena de audio DSP.
OnBecameInvisibleOnBecameInvisible se llama cuando el renderer ya no es visible por cualquier cámara.
OnBecameVisibleOnBecameVisible se llama cuando el renderer se vuelve visible por cualquier cámara.
OnCollisionEnterOnCollisionEnter se llama cuando el Collider o Rigidbody entra en contacto con otro Collider/Rigidbody.
OnCollisionEnter2DSe envia cuando un collider entrante entra en contacto con el collider de este objeto (física 2D solamente).
OnCollisionExitOnCollisionExit se llama cuando este collider/rigidbody ha dejado de tocar otro rigidbody/collider.
OnCollisionExit2DEnviado cuando un collider en otro objeto para de tocar el collider de este objeto (física 2D solamente).
OnCollisionStayOnCollisionStay se llama cada frame para cada collider/rigidbody que está tocando rigidbody/collider.
OnCollisionStay2DEnviado cada frame donde un collider en otro objeto está tocando el collider de este objeto (física 2D solamente).
OnConnectedToServerLlamado en el cliente cuando usted se ha conectado con éxito a un servidor.
OnControllerColliderHitOnControllerColliderHit se llama cuando el controller golpea a un collider mientras realiza un Move (movimiento).
OnDestroyEsta función es llamada cuando el MonoBehaviour será destruido.
OnDisableEsta función se llama cuando el comportamiento se desactiva () o inactivo.
OnDisconnectedFromServerLlamado en el cliente cuando la conexión se ha perdido o usted se ha desconectado del servidor.
OnDrawGizmosImplementa OnDrawGizmos si usted quiere dibujar gizmos que también se recojan y siempre se dibujen.
OnDrawGizmosSelectedImplementa OnDrawGizmosSelected para dibujar un gizmo si el objeto es seleccionado.
OnEnableEsta función se llama cuando el objeto se vuelve habilitado y activo.
OnFailedToConnectLlamado en el cliente cuando un intento de conexión falla por alguna razón.
OnFailedToConnectToMasterServerLlamado en los clientes o servidores donde hay un problema conectándose al MasterServer.
OnGUIOnGUI se llama para el rendering y el manejo de eventos GUI.
OnJointBreakLlamado cuando un joint adjuntado al mismo game object se rompe.
OnJointBreak2DCalled when a Joint2D attached to the same game object breaks.
OnMasterServerEventLlamado en clientes o servidores cuando se reporta eventos desde el MasterServer.
OnMouseDownOnMouseDown se llama cuando el usuario ha presionado el botón del mouse mientras está sobre el GUIElement o Collider.
OnMouseDragOnMouseDrag se llama cuando el usuario ha oprimido un GUIElement o Collider y todavía tiene presionado el mouse.
OnMouseEnterLlamado cuando el mouse ingresa el GUIElement o Collider.
OnMouseExitLlamado cuando el mouse no está más sobre el GUIElement o Collider.
OnMouseOverLlamado cada frame mientras que el mouse está sobre el GUIElement o Collider.
OnMouseUpOnMouseUp se llama cuando el usuario ha soltado el botón del mouse.
OnMouseUpAsButtonOnMouseUpAsButton es solamente llamado cuando el mouse se suelta sobre el mismo GUIElement o Collider a medida que era presionado.
OnNetworkInstantiateLlamado en objetos que han sido instaciados en la red con Network.Instantiate.
OnParticleCollisionOnParticleCollision se llama cuando una partícula golpea un Collider.
OnParticleTriggerOnParticleTrigger se llama cuando cualquier partícula en un sistema de partículas coincide con las condiciones en el módulo trigger.
OnPlayerConnectedLlamado en el servidor cuando un nuevo player se ha conectado con éxito.
OnPlayerDisconnectedLlamado en el servidor cuando un player se ha desconectado del servidor.
OnPostRenderOnPostRender se llama después de que la cámara ha terminado de renderizar la escena.
OnPreCullOnPreCull is called before a camera culls the scene.
OnPreRenderOnPreRender se llama antes de que la cámara comience a renderizar la escena.
OnRenderImageOnRenderImage is called after all rendering is complete to render image.
OnRenderObjectOnRenderObject is called after camera has rendered the scene.
OnSerializeNetworkViewUtilizado para personalizar la sincronización de variables en un script observado por un network view.
OnServerInitializedLlamado en el servidor cada vez que un Network.InitializeServer fue invocado y se ha completado.
OnTransformChildrenChangedEsta función se llama cuando la lista de hijos del transform del GameObject ha cambiado.
OnTransformParentChangedEsta función se llama cuando la propiedad padre del transform de este GameObject ha cambiado.
OnTriggerEnterOnTriggerEnter se llama cuando Collider other ingresa el trigger.
OnTriggerEnter2DEnviado cuando otro objeto ingresa a un trigger collider adjunto a este objeto (física 2D solamente).
OnTriggerExitOnTriggerExit se llama cunado el Collider other ha parado de tocar el trigger.
OnTriggerExit2DEnviado cuando otro objeto deja un trigger collider adjunto a este objeto (física 2D solamente).
OnTriggerStayOnTriggerStay se llama una vez por frame por cada Collider other que está tocando el trigger.
OnTriggerStay2DEnviado cada frame donde otro objeto está dentro de un trigger collider adjunto a este objeto (física 2D solamente).
OnValidateEsta función se llama cuando el script se ha cargado o un valor ha cambiado en el inspector (Llamado solamente en el editor).
OnWillRenderObjectOnWillRenderObject is called for each camera if the object is visible and not a UI element.
ResetSe re-inicia a los valores predeterminados.
StartStart se llama en el frame cuando un script está habilitado justo antes de que cualquier otro método Update sea llamado la primera vez.
UpdateUpdate se llama cada frame, si MonoBehaviour está habilitado.