docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class ARAnchorManager

    Manages anchors.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    SubsystemLifecycleManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider>
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>
    ARAnchorManager
    Inherited Members
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>.trackables
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>.SetTrackablesActive(bool)
    SubsystemLifecycleManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider>.subsystem
    SubsystemLifecycleManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider>.descriptor
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    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, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, 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, bool)
    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, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.XR.ARFoundation
    Assembly: Unity.XR.ARFoundation.dll
    Syntax
    [DefaultExecutionOrder(-2147483647)]
    [DisallowMultipleComponent]
    [RequireComponent(typeof(XROrigin))]
    public sealed class ARAnchorManager : ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>
    Remarks

    An anchor is a pose (position and rotation) in the physical environment that is tracked by an XR device. Anchors are updated as the device refines its understanding of the environment, allowing you to reliably place mixed reality content at a physical pose.

    Related information: Anchors

    Properties

    anchorPrefab

    This prefab will be instantiated for each ARAnchor. May be null.

    Declaration
    public GameObject anchorPrefab { get; set; }
    Property Value
    Type Description
    GameObject
    Remarks

    The purpose of this property is to extend the functionality of ARAnchors. It is not the recommended way to instantiate content associated with an ARAnchor.

    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    gameObjectName

    The name to assign to the GameObject instantiated for each ARAnchor.

    Declaration
    protected override string gameObjectName { get; }
    Property Value
    Type Description
    string
    Overrides
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>.gameObjectName
    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    Methods

    AddAnchor(Pose)

    Attempts to add an ARAnchor with the given Pose.

    Declaration
    [Obsolete("Add an anchor using AddComponent<ARAnchor>(). (2020-10-06)")]
    public ARAnchor AddAnchor(Pose pose)
    Parameters
    Type Name Description
    Pose pose

    The pose, in Unity world space, of the ARAnchor.

    Returns
    Type Description
    ARAnchor

    A new ARAnchor if successful, otherwise null.

    Remarks

    If GetPrefab() is not null, a new instance of that prefab will be instantiated. Otherwise, a new GameObject will be created. In either case, the resulting GameObject will have an ARAnchor component on it.

    Exceptions
    Type Condition
    InvalidOperationException

    Thrown if this MonoBehaviour is not enabled.

    InvalidOperationException

    Thrown if the underlying subsystem is null.

    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    AttachAnchor(ARPlane, Pose)

    Attempts to create a new anchor that is attached to an existing ARPlane.

    Declaration
    public ARAnchor AttachAnchor(ARPlane plane, Pose pose)
    Parameters
    Type Name Description
    ARPlane plane

    The ARPlane to which to attach.

    Pose pose

    The initial Pose, in Unity world space, of the anchor.

    Returns
    Type Description
    ARAnchor

    A new ARAnchor if successful, otherwise null.

    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    GetAnchor(TrackableId)

    Gets the ARAnchor with given trackableId, or null if it does not exist.

    Declaration
    public ARAnchor GetAnchor(TrackableId trackableId)
    Parameters
    Type Name Description
    TrackableId trackableId

    The TrackableId of the ARAnchor to retrieve.

    Returns
    Type Description
    ARAnchor

    The ARAnchor with trackableId or null if it does not exist.

    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    GetPrefab()

    Get the prefab to instantiate for each ARAnchor.

    Declaration
    protected override GameObject GetPrefab()
    Returns
    Type Description
    GameObject

    The prefab to instantiate for each ARAnchor.

    Overrides
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>.GetPrefab()
    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    OnTrackablesChanged(List<ARAnchor>, List<ARAnchor>, List<ARAnchor>)

    Invoked when the base class detects trackable changes.

    Declaration
    protected override void OnTrackablesChanged(List<ARAnchor> added, List<ARAnchor> updated, List<ARAnchor> removed)
    Parameters
    Type Name Description
    List<ARAnchor> added

    The list of added anchors.

    List<ARAnchor> updated

    The list of updated anchors.

    List<ARAnchor> removed

    The list of removed anchors.

    Overrides
    ARTrackableManager<XRAnchorSubsystem, XRAnchorSubsystemDescriptor, XRAnchorSubsystem.Provider, XRAnchor, ARAnchor>.OnTrackablesChanged(List<ARAnchor>, List<ARAnchor>, List<ARAnchor>)
    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    RemoveAnchor(ARAnchor)

    Attempts to remove an ARAnchor.

    Declaration
    [Obsolete("Call Destroy() on the ARAnchor component to remove it. (2020-10-06)")]
    public bool RemoveAnchor(ARAnchor anchor)
    Parameters
    Type Name Description
    ARAnchor anchor

    The anchor you wish to remove.

    Returns
    Type Description
    bool

    True if the anchor was successfully removed. False usually means the anchor is not longer tracked by the system.

    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    Events

    anchorsChanged

    Invoked once per frame to communicate changes to anchors, including new anchors, the update of existing anchors, and the removal of previously existing anchors.

    Declaration
    public event Action<ARAnchorsChangedEventArgs> anchorsChanged
    Event Type
    Type Description
    Action<ARAnchorsChangedEventArgs>
    See Also
    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>

    See Also

    ARTrackableManager<TSubsystem, TSubsystemDescriptor, TProvider, TSessionRelativeData, TTrackable>
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)