docs.unity3d.com
    Show / Hide Table of Contents

    Struct NetworkObjectReference

    A helper struct for serializing NetworkObjects over the network. Can be used in RPCs and NetworkVariable<T>.

    Inherited Members
    ValueType.ToString()
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Namespace: Unity.Netcode
    Syntax
    public struct NetworkObjectReference : INetworkSerializable, IEquatable<NetworkObjectReference>

    Constructors

    NetworkObjectReference(NetworkObject)

    Creates a new instance of the NetworkObjectReference struct.

    Declaration
    public NetworkObjectReference(NetworkObject networkObject)
    Parameters
    Type Name Description
    NetworkObject networkObject

    The NetworkObject to reference.

    Exceptions
    Type Condition
    ArgumentNullException
    ArgumentException

    NetworkObjectReference(GameObject)

    Creates a new instance of the NetworkObjectReference struct.

    Declaration
    public NetworkObjectReference(GameObject gameObject)
    Parameters
    Type Name Description
    GameObject gameObject

    The GameObject from which the NetworkObject component will be referenced.

    Exceptions
    Type Condition
    ArgumentNullException
    ArgumentException

    Properties

    NetworkObjectId

    The NetworkObjectId of the referenced NetworkObject.

    Declaration
    public ulong NetworkObjectId { get; }
    Property Value
    Type Description
    UInt64

    Methods

    Equals(Object)

    Declaration
    public override bool Equals(object obj)
    Parameters
    Type Name Description
    Object obj
    Returns
    Type Description
    Boolean
    Overrides
    ValueType.Equals(Object)

    Equals(NetworkObjectReference)

    Declaration
    public bool Equals(NetworkObjectReference other)
    Parameters
    Type Name Description
    NetworkObjectReference other
    Returns
    Type Description
    Boolean
    Implements
    IEquatable<T>.Equals(T)

    GetHashCode()

    Declaration
    public override int GetHashCode()
    Returns
    Type Description
    Int32
    Overrides
    ValueType.GetHashCode()

    NetworkSerialize<T>(BufferSerializer<T>)

    Provides bi-directional serialization to read and write the desired data to serialize this type.

    Declaration
    public void NetworkSerialize<T>(BufferSerializer<T> serializer)
        where T : IReaderWriter
    Parameters
    Type Name Description
    BufferSerializer<T> serializer

    The serializer to use to read and write the data.

    Type Parameters
    Name Description
    T

    Either BufferSerializerReader or BufferSerializerWriter, depending whether the serializer is in read mode or write mode.

    Implements
    INetworkSerializable.NetworkSerialize<T>(BufferSerializer<T>)

    TryGet(out NetworkObject, NetworkManager)

    Tries to get the NetworkObject referenced by this reference.

    Declaration
    public bool TryGet(out NetworkObject networkObject, NetworkManager networkManager = null)
    Parameters
    Type Name Description
    NetworkObject networkObject

    The NetworkObject which was found. Null if no object was found.

    NetworkManager networkManager

    The networkmanager. Uses Singleton to resolve if null.

    Returns
    Type Description
    Boolean

    True if the NetworkObject was found; False if the NetworkObject was not found. This can happen if the NetworkObject has not been spawned yet. you can try getting the reference at a later point in time.

    Operators

    Implicit(NetworkObject to NetworkObjectReference)

    Implicitly convert NetworkObject to NetworkObjectReference.

    Declaration
    public static implicit operator NetworkObjectReference(NetworkObject networkObject)
    Parameters
    Type Name Description
    NetworkObject networkObject

    The NetworkObject to convert from.

    Returns
    Type Description
    NetworkObjectReference

    The NetworkObjectReference created from the NetworkObject parameter

    Implicit(NetworkObjectReference to NetworkObject)

    Implicitly convert NetworkObjectReference to NetworkObject.

    Declaration
    public static implicit operator NetworkObject(NetworkObjectReference networkObjectRef)
    Parameters
    Type Name Description
    NetworkObjectReference networkObjectRef

    The NetworkObjectReference to convert from.

    Returns
    Type Description
    NetworkObject

    The NetworkObject the NetworkObjectReference is referencing

    Implicit(NetworkObjectReference to GameObject)

    Implicitly convert NetworkObjectReference to GameObject.

    Declaration
    public static implicit operator GameObject(NetworkObjectReference networkObjectRef)
    Parameters
    Type Name Description
    NetworkObjectReference networkObjectRef

    The NetworkObjectReference to convert from.

    Returns
    Type Description
    GameObject

    This returns the GameObject that the NetworkObject is attached to and is referenced by the NetworkObjectReference passed in as a parameter

    Implicit(GameObject to NetworkObjectReference)

    Implicitly convert GameObject to NetworkObject.

    Declaration
    public static implicit operator NetworkObjectReference(GameObject gameObject)
    Parameters
    Type Name Description
    GameObject gameObject

    The GameObject to convert from.

    Returns
    Type Description
    NetworkObjectReference

    The NetworkObjectReference created from the GameObject parameter that has a NetworkObject component attached to it

    Back to top Copyright © 2023 Unity Technologies — Terms of use
    Generated by DocFX
    on 26 October 2023