docs.unity3d.com
    Show / Hide Table of Contents

    Class NavMeshLink

    Component used to create a navigable link between two NavMesh locations.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    NavMeshLink
    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)
    UnityEngine.MonoBehaviour.StartCoroutine_Auto(System.Collections.IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.destroyCancellationToken
    MonoBehaviour.useGUILayout
    MonoBehaviour.didStart
    MonoBehaviour.didAwake
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    UnityEngine.Component.GetComponent<T>()
    UnityEngine.Component.TryGetComponent(System.Type, UnityEngine.Component)
    UnityEngine.Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    UnityEngine.Component.GetComponentInChildren<T>(System.Boolean)
    UnityEngine.Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    UnityEngine.Component.GetComponentsInChildren(System.Type)
    UnityEngine.Component.GetComponentsInChildren<T>(System.Boolean)
    UnityEngine.Component.GetComponentsInChildren<T>(System.Boolean, System.Collections.Generic.List<T>)
    UnityEngine.Component.GetComponentsInChildren<T>()
    UnityEngine.Component.GetComponentsInChildren<T>(System.Collections.Generic.List<T>)
    Component.GetComponentInParent(Type, Boolean)
    Component.GetComponentInParent(Type)
    UnityEngine.Component.GetComponentInParent<T>(System.Boolean)
    UnityEngine.Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    UnityEngine.Component.GetComponentsInParent(System.Type)
    UnityEngine.Component.GetComponentsInParent<T>(System.Boolean)
    UnityEngine.Component.GetComponentsInParent<T>(System.Boolean, System.Collections.Generic.List<T>)
    UnityEngine.Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    UnityEngine.Component.GetComponents(System.Type, System.Collections.Generic.List<UnityEngine.Component>)
    UnityEngine.Component.GetComponents<T>(System.Collections.Generic.List<T>)
    UnityEngine.Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.CompareTag(TagHandle)
    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()
    UnityEngine.Object.GetHashCode()
    UnityEngine.Object.Equals(System.Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    UnityEngine.Object.Instantiate<T>(T)
    UnityEngine.Object.Instantiate<T>(T, UnityEngine.Vector3, UnityEngine.Quaternion)
    UnityEngine.Object.Instantiate<T>(T, UnityEngine.Vector3, UnityEngine.Quaternion, UnityEngine.Transform)
    UnityEngine.Object.Instantiate<T>(T, UnityEngine.Transform)
    UnityEngine.Object.Instantiate<T>(T, UnityEngine.Transform, System.Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, Boolean)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    UnityEngine.Object.DestroyObject(UnityEngine.Object, System.Single)
    UnityEngine.Object.DestroyObject(UnityEngine.Object)
    UnityEngine.Object.FindSceneObjectsOfType(System.Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    UnityEngine.Object.FindObjectsOfType<T>()
    UnityEngine.Object.FindObjectsByType<T>(UnityEngine.FindObjectsSortMode)
    UnityEngine.Object.FindObjectsOfType<T>(System.Boolean)
    UnityEngine.Object.FindObjectsByType<T>(UnityEngine.FindObjectsInactive, UnityEngine.FindObjectsSortMode)
    UnityEngine.Object.FindObjectOfType<T>()
    UnityEngine.Object.FindObjectOfType<T>(System.Boolean)
    UnityEngine.Object.FindFirstObjectByType<T>()
    UnityEngine.Object.FindAnyObjectByType<T>()
    UnityEngine.Object.FindFirstObjectByType<T>(UnityEngine.FindObjectsInactive)
    UnityEngine.Object.FindAnyObjectByType<T>(UnityEngine.FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, Boolean)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Unity.AI.Navigation
    Syntax
    [ExecuteAlways]
    [DefaultExecutionOrder(-101)]
    [AddComponentMenu("Navigation/NavMeshLink", 33)]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.ai.navigation@2.0/manual/NavMeshLink.html")]
    public class NavMeshLink : MonoBehaviour

    Properties

    activated

    Gets or sets whether the link can be traversed by agents.

    Declaration
    public bool activated { get; set; }
    Property Value
    Type Description
    Boolean
    Remarks

    When this property is set to true it allows the agents to traverse the link. When the value is false no paths pass through this link and no agent can traverse it as part of their autonomous movement.

    agentTypeID

    Gets or sets the type of agent that can use the link.

    Declaration
    public int agentTypeID { get; set; }
    Property Value
    Type Description
    Int32

    area

    The area type of the link.

    Declaration
    public int area { get; set; }
    Property Value
    Type Description
    Int32

    autoUpdate

    Gets or sets whether the world positions of the link's edges update whenever the GameObject transform changes at runtime.

    Declaration
    public bool autoUpdate { get; set; }
    Property Value
    Type Description
    Boolean

    autoUpdatePositions

    Declaration
    [Obsolete("autoUpdatePositions has been deprecated. Use autoUpdate instead. (UnityUpgradable) -> autoUpdate")]
    public bool autoUpdatePositions { get; set; }
    Property Value
    Type Description
    Boolean

    bidirectional

    Gets or sets whether the link can be traversed in both directions.

    Declaration
    public bool bidirectional { get; set; }
    Property Value
    Type Description
    Boolean
    Remarks

    A link that connects to NavMeshes at both ends can always be traversed from the start position to the end position. When this property is set to true it allows the agents to traverse the link also in the direction from end to start. When the value is false the agents will never move over the link from the end position to the start position.

    biDirectional

    Declaration
    [Obsolete("biDirectional has been deprecated. Use bidirectional instead. (UnityUpgradable) -> bidirectional")]
    public bool biDirectional { get; set; }
    Property Value
    Type Description
    Boolean

    costModifier

    Gets or sets a value that determines the cost of traversing the link.

    Declaration
    public float costModifier { get; set; }
    Property Value
    Type Description
    Single
    Remarks

    A negative value implies that the traversal cost is obtained based on the area type. A positive or zero value applies immediately, overriding the cost associated with the area type.

    costOverride

    Declaration
    [Obsolete("costOverride has been deprecated. Use costModifier instead. (UnityUpgradable) -> costModifier")]
    public float costOverride { get; set; }
    Property Value
    Type Description
    Single

    endPoint

    Gets or sets the local position at the middle of the link's end edge, relative to the GameObject origin.

    Declaration
    public Vector3 endPoint { get; set; }
    Property Value
    Type Description
    Vector3
    Remarks

    The position is translated and rotated by endTransform when endTransform is null or equal to the GameObject transform. Otherwise, the link is only translated by endTransform. The scale of the specified transform is never used.

    endTransform

    Gets or sets the Transform tracked by the middle of the link's end edge.

    Declaration
    public Transform endTransform { get; set; }
    Property Value
    Type Description
    Transform
    Remarks

    When this property is null or equal to the GameObject transform, it applies the GameObject's translation and rotation as a transform to endPoint in order to establish the world position of the link's end edge. When this property takes any other value, it applies only its translation to the endPoint.

    occupied

    Checks whether any agent occupies the link at this moment in time.

    Declaration
    public bool occupied { get; }
    Property Value
    Type Description
    Boolean
    Remarks

    This property evaluates the internal state of the link every time it is used.

    startPoint

    Gets or sets the local position at the middle of the link's start edge, relative to the GameObject origin.

    Declaration
    public Vector3 startPoint { get; set; }
    Property Value
    Type Description
    Vector3
    Remarks

    The position is translated and rotated by startTransform when startTransform is null or equal to the GameObject transform. Otherwise, the link is only translated by startTransform. The scale of the specified transform is never used.

    startTransform

    Gets or sets the Transform tracked by the middle of the link's start edge.

    Declaration
    public Transform startTransform { get; set; }
    Property Value
    Type Description
    Transform
    Remarks

    When this property is null or equal to the GameObject transform, it applies the GameObject's translation and rotation as a transform to startPoint in order to establish the world position of the link's start edge. When this property takes any other value, it applies only its translation to startPoint.

    width

    The width of the segments making up the ends of the link.

    Declaration
    public float width { get; set; }
    Property Value
    Type Description
    Single
    Remarks

    The segments are created perpendicular to the line from start to end, in the XZ plane of the GameObject.

    Methods

    UpdateLink()

    Replaces the link with a new one using the current settings.

    Declaration
    public void UpdateLink()

    UpdatePositions()

    Declaration
    [Obsolete("UpdatePositions() has been deprecated. Use UpdateLink() instead. (UnityUpgradable) -> UpdateLink(*)")]
    public void UpdatePositions()
    Back to top
    Copyright © 2023 Unity Technologies
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on Thursday, October 19, 2023