docs.unity3d.com
    Show / Hide Table of Contents

    Class NetworkTransport

    The generic transport class all Netcode for GameObjects network transport implementations derive from. Use this class to add a custom transport. UnityTransport

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    NetworkTransport
    UnityTransport
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.SendMessageUpwards(String, Object, SendMessageOptions)
    Component.SendMessageUpwards(String, Object)
    Component.SendMessageUpwards(String)
    Component.SendMessageUpwards(String, SendMessageOptions)
    Component.SendMessage(String, Object)
    Component.SendMessage(String)
    Component.SendMessage(String, Object, SendMessageOptions)
    Component.SendMessage(String, SendMessageOptions)
    Component.BroadcastMessage(String, Object, SendMessageOptions)
    Component.BroadcastMessage(String, Object)
    Component.BroadcastMessage(String)
    Component.BroadcastMessage(String, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectOfType<T>()
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.ToString()
    Object.name
    Object.hideFlags
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Unity.Netcode
    Syntax
    public abstract class NetworkTransport : MonoBehaviour

    Properties

    IsSupported

    Gets a value indicating whether this NetworkTransport is supported in the current runtime context This is used by multiplex adapters

    Declaration
    public virtual bool IsSupported { get; }
    Property Value
    Type Description
    Boolean

    true if is supported; otherwise, false.

    ServerClientId

    A constant clientId that represents the server When this value is found in methods such as Send, it should be treated as a placeholder that means "the server"

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

    Methods

    DisconnectLocalClient()

    Disconnects the local client from the server

    Declaration
    public abstract void DisconnectLocalClient()

    DisconnectRemoteClient(UInt64)

    Disconnects a client from the server

    Declaration
    public abstract void DisconnectRemoteClient(ulong clientId)
    Parameters
    Type Name Description
    UInt64 clientId

    The clientId to disconnect

    GetCurrentRtt(UInt64)

    Gets the round trip time for a specific client. This method is optional

    Declaration
    public abstract ulong GetCurrentRtt(ulong clientId)
    Parameters
    Type Name Description
    UInt64 clientId

    The clientId to get the RTT from

    Returns
    Type Description
    UInt64

    Returns the round trip time in milliseconds

    Initialize(NetworkManager)

    Initializes the transport

    Declaration
    public abstract void Initialize(NetworkManager networkManager = null)
    Parameters
    Type Name Description
    NetworkManager networkManager

    optionally pass in NetworkManager

    InvokeOnTransportEvent(NetworkEvent, UInt64, ArraySegment<Byte>, Single)

    Invokes the OnTransportEvent. Invokation has to occur on the Unity thread in the Update loop.

    Declaration
    protected void InvokeOnTransportEvent(NetworkEvent eventType, ulong clientId, ArraySegment<byte> payload, float receiveTime)
    Parameters
    Type Name Description
    NetworkEvent eventType

    The event type

    UInt64 clientId

    The clientId this event is for

    ArraySegment<Byte> payload

    The incoming data payload

    Single receiveTime

    The time the event was received, as reported by Time.realtimeSinceStartup.

    PollEvent(out UInt64, out ArraySegment<Byte>, out Single)

    Polls for incoming events, with an extra output parameter to report the precise time the event was received.

    Declaration
    public abstract NetworkEvent PollEvent(out ulong clientId, out ArraySegment<byte> payload, out float receiveTime)
    Parameters
    Type Name Description
    UInt64 clientId

    The clientId this event is for

    ArraySegment<Byte> payload

    The incoming data payload

    Single receiveTime

    The time the event was received, as reported by Time.realtimeSinceStartup.

    Returns
    Type Description
    NetworkEvent

    Returns the event type

    Send(UInt64, ArraySegment<Byte>, NetworkDelivery)

    Send a payload to the specified clientId, data and networkDelivery.

    Declaration
    public abstract void Send(ulong clientId, ArraySegment<byte> payload, NetworkDelivery networkDelivery)
    Parameters
    Type Name Description
    UInt64 clientId

    The clientId to send to

    ArraySegment<Byte> payload

    The data to send

    NetworkDelivery networkDelivery

    The delivery type (QoS) to send data with

    Shutdown()

    Shuts down the transport

    Declaration
    public abstract void Shutdown()

    StartClient()

    Connects client to the server

    Declaration
    public abstract bool StartClient()
    Returns
    Type Description
    Boolean

    Returns success or failure

    StartServer()

    Starts to listening for incoming clients

    Declaration
    public abstract bool StartServer()
    Returns
    Type Description
    Boolean

    Returns success or failure

    Events

    OnTransportEvent

    Occurs when the transport has a new transport network event. Can be used to make an event based transport instead of a poll based. Invocation has to occur on the Unity thread in the Update loop.

    Declaration
    public event NetworkTransport.TransportEventDelegate OnTransportEvent
    Event Type
    Type Description
    NetworkTransport.TransportEventDelegate
    Back to top Copyright © 2023 Unity Technologies — Terms of use
    Generated by DocFX
    on 26 October 2023