docs.unity.cn
    Show / Hide Table of Contents

    Class ARPlaneManager

    A manager for ARPlanes. Creates, updates, and removes GameObjects in response to detected surfaces in the physical environment.

    Inheritance
    Object
    UnityEngine.Object
    UnityEngine.Component
    UnityEngine.Behaviour
    UnityEngine.MonoBehaviour
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>
    ARPlaneManager
    Inherited Members
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.trackables
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.SetTrackablesActive(Boolean)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.origin
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.sessionOrigin
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.gameObjectName
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.GetPrefab()
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.m_Trackables
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.m_PendingAdds
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.Awake()
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.OnEnable()
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.OnDisable()
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.CanBeAddedToSubsystem(ARPlane)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.Update()
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.OnTrackablesChanged(List<ARPlane>, List<ARPlane>, List<ARPlane>)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.OnCreateTrackable(ARPlane)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.OnAfterSetSessionRelativeData(ARPlane, BoundedPlane)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.CreateTrackableImmediate(BoundedPlane)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.DestroyPendingTrackable(TrackableId)
    ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>.CreateTrackableFromExisting(ARPlane, BoundedPlane)
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.subsystem
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.descriptor
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.GetActiveSubsystemInstance()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.EnsureSubsystemInstanceSet()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.OnEnable()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.OnDisable()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.OnDestroy()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.OnBeforeStart()
    SubsystemLifecycleManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider>.OnAfterStart()
    UnityEngine.MonoBehaviour.IsInvoking()
    UnityEngine.MonoBehaviour.CancelInvoke()
    UnityEngine.MonoBehaviour.Invoke(System.String, System.Single)
    UnityEngine.MonoBehaviour.InvokeRepeating(System.String, System.Single, System.Single)
    UnityEngine.MonoBehaviour.CancelInvoke(System.String)
    UnityEngine.MonoBehaviour.IsInvoking(System.String)
    UnityEngine.MonoBehaviour.StartCoroutine(System.String)
    UnityEngine.MonoBehaviour.StartCoroutine(System.String, System.Object)
    UnityEngine.MonoBehaviour.StartCoroutine(System.Collections.IEnumerator)
    UnityEngine.MonoBehaviour.StartCoroutine_Auto(System.Collections.IEnumerator)
    UnityEngine.MonoBehaviour.StopCoroutine(System.Collections.IEnumerator)
    UnityEngine.MonoBehaviour.StopCoroutine(UnityEngine.Coroutine)
    UnityEngine.MonoBehaviour.StopCoroutine(System.String)
    UnityEngine.MonoBehaviour.StopAllCoroutines()
    UnityEngine.MonoBehaviour.print(System.Object)
    UnityEngine.MonoBehaviour.useGUILayout
    UnityEngine.MonoBehaviour.runInEditMode
    UnityEngine.Behaviour.enabled
    UnityEngine.Behaviour.isActiveAndEnabled
    UnityEngine.Component.GetComponent(System.Type)
    UnityEngine.Component.GetComponent<T>()
    UnityEngine.Component.TryGetComponent(System.Type, UnityEngine.Component)
    UnityEngine.Component.TryGetComponent<T>(T)
    UnityEngine.Component.GetComponent(System.String)
    UnityEngine.Component.GetComponentInChildren(System.Type, System.Boolean)
    UnityEngine.Component.GetComponentInChildren(System.Type)
    UnityEngine.Component.GetComponentInChildren<T>(System.Boolean)
    UnityEngine.Component.GetComponentInChildren<T>()
    UnityEngine.Component.GetComponentsInChildren(System.Type, System.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>)
    UnityEngine.Component.GetComponentInParent(System.Type, System.Boolean)
    UnityEngine.Component.GetComponentInParent(System.Type)
    UnityEngine.Component.GetComponentInParent<T>(System.Boolean)
    UnityEngine.Component.GetComponentInParent<T>()
    UnityEngine.Component.GetComponentsInParent(System.Type, System.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>()
    UnityEngine.Component.GetComponents(System.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>()
    UnityEngine.Component.CompareTag(System.String)
    UnityEngine.Component.SendMessageUpwards(System.String, System.Object, UnityEngine.SendMessageOptions)
    UnityEngine.Component.SendMessageUpwards(System.String, System.Object)
    UnityEngine.Component.SendMessageUpwards(System.String)
    UnityEngine.Component.SendMessageUpwards(System.String, UnityEngine.SendMessageOptions)
    UnityEngine.Component.SendMessage(System.String, System.Object)
    UnityEngine.Component.SendMessage(System.String)
    UnityEngine.Component.SendMessage(System.String, System.Object, UnityEngine.SendMessageOptions)
    UnityEngine.Component.SendMessage(System.String, UnityEngine.SendMessageOptions)
    UnityEngine.Component.BroadcastMessage(System.String, System.Object, UnityEngine.SendMessageOptions)
    UnityEngine.Component.BroadcastMessage(System.String, System.Object)
    UnityEngine.Component.BroadcastMessage(System.String)
    UnityEngine.Component.BroadcastMessage(System.String, UnityEngine.SendMessageOptions)
    UnityEngine.Component.transform
    UnityEngine.Component.gameObject
    UnityEngine.Component.tag
    UnityEngine.Component.rigidbody
    UnityEngine.Component.rigidbody2D
    UnityEngine.Component.camera
    UnityEngine.Component.light
    UnityEngine.Component.animation
    UnityEngine.Component.constantForce
    UnityEngine.Component.renderer
    UnityEngine.Component.audio
    UnityEngine.Component.networkView
    UnityEngine.Component.collider
    UnityEngine.Component.collider2D
    UnityEngine.Component.hingeJoint
    UnityEngine.Component.particleSystem
    UnityEngine.Object.GetInstanceID()
    UnityEngine.Object.GetHashCode()
    UnityEngine.Object.Equals(System.Object)
    UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion)
    UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Vector3, UnityEngine.Quaternion, UnityEngine.Transform)
    UnityEngine.Object.Instantiate(UnityEngine.Object)
    UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Transform)
    UnityEngine.Object.Instantiate(UnityEngine.Object, UnityEngine.Transform, System.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)
    UnityEngine.Object.Destroy(UnityEngine.Object, System.Single)
    UnityEngine.Object.Destroy(UnityEngine.Object)
    UnityEngine.Object.DestroyImmediate(UnityEngine.Object, System.Boolean)
    UnityEngine.Object.DestroyImmediate(UnityEngine.Object)
    UnityEngine.Object.FindObjectsOfType(System.Type)
    UnityEngine.Object.FindObjectsOfType(System.Type, System.Boolean)
    UnityEngine.Object.DontDestroyOnLoad(UnityEngine.Object)
    UnityEngine.Object.DestroyObject(UnityEngine.Object, System.Single)
    UnityEngine.Object.DestroyObject(UnityEngine.Object)
    UnityEngine.Object.FindSceneObjectsOfType(System.Type)
    UnityEngine.Object.FindObjectsOfTypeIncludingAssets(System.Type)
    UnityEngine.Object.FindObjectsOfType<T>()
    UnityEngine.Object.FindObjectsOfType<T>(System.Boolean)
    UnityEngine.Object.FindObjectOfType<T>()
    UnityEngine.Object.FindObjectOfType<T>(System.Boolean)
    UnityEngine.Object.FindObjectsOfTypeAll(System.Type)
    UnityEngine.Object.FindObjectOfType(System.Type)
    UnityEngine.Object.FindObjectOfType(System.Type, System.Boolean)
    UnityEngine.Object.ToString()
    UnityEngine.Object.name
    UnityEngine.Object.hideFlags
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: UnityEngine.XR.ARFoundation
    Syntax
    [DefaultExecutionOrder(-2147483647)]
    [DisallowMultipleComponent]
    [RequireComponent(typeof(XROrigin))]
    public sealed class ARPlaneManager : ARTrackableManager<XRPlaneSubsystem, XRPlaneSubsystemDescriptor, XRPlaneSubsystem.Provider, BoundedPlane, ARPlane>, IRaycaster

    Properties

    currentDetectionMode

    Get the current plane detection mode in use by the subsystem.

    Declaration
    public PlaneDetectionMode currentDetectionMode { get; }
    Property Value
    Type Description
    PlaneDetectionMode

    detectionMode

    Get or set the PlaneDetectionMode to use for plane detection. This property is obsolete. Use requestedDetectionMode or currentDetectionMode instead.

    Declaration
    [Obsolete("Use requestedDetectionMode or currentDetectionMode instead")]
    public PlaneDetectionMode detectionMode { get; set; }
    Property Value
    Type Description
    PlaneDetectionMode

    gameObjectName

    The name to be used for the GameObject whenever a new plane is detected.

    Declaration
    protected override string gameObjectName { get; }
    Property Value
    Type Description
    String
    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.gameObjectName

    planePrefab

    Getter or setter for the Plane Prefab.

    Declaration
    public GameObject planePrefab { get; set; }
    Property Value
    Type Description
    UnityEngine.GameObject

    requestedDetectionMode

    Get or set the requested plane detection mode.

    Declaration
    public PlaneDetectionMode requestedDetectionMode { get; set; }
    Property Value
    Type Description
    PlaneDetectionMode

    Methods

    GetPlane(TrackableId)

    Attempt to retrieve an existing ARPlane by trackableId.

    Declaration
    public ARPlane GetPlane(TrackableId trackableId)
    Parameters
    Type Name Description
    TrackableId trackableId

    The TrackableId of the plane to retrieve.

    Returns
    Type Description
    ARPlane

    The ARPlane with trackableId, or null if it does not exist.

    GetPrefab()

    Get the Prefab which will be instantiated for each ARPlane. Can be null.

    Declaration
    protected override GameObject GetPrefab()
    Returns
    Type Description
    UnityEngine.GameObject

    The Prefab which will be instantiated for each ARPlane.

    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.GetPrefab()

    OnAfterSetSessionRelativeData(ARPlane, BoundedPlane)

    Invoked just after each ARPlane is updated.

    Declaration
    protected override void OnAfterSetSessionRelativeData(ARPlane plane, BoundedPlane sessionRelativeData)
    Parameters
    Type Name Description
    ARPlane plane

    The ARPlane being updated.

    BoundedPlane sessionRelativeData

    The new data associated with the plane. All spatial data is is session-relative space.

    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.OnAfterSetSessionRelativeData(UnityEngine.XR.ARFoundation.ARPlane, UnityEngine.XR.ARSubsystems.BoundedPlane)

    OnBeforeStart()

    Invoked just before Starting the plane subsystem. Used to set the subsystem's requestedPlaneDetectionMode.

    Declaration
    protected override void OnBeforeStart()
    Overrides
    UnityEngine.XR.ARFoundation.SubsystemLifecycleManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider>.OnBeforeStart()

    OnDisable()

    Invoked when Unity disables this MonoBehaviour. Used to unregister with the ARRaycastManager.

    Declaration
    protected override void OnDisable()
    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.OnDisable()

    OnEnable()

    Invoked when Unity enables this MonoBehaviour. Used to register with the ARRaycastManager.

    Declaration
    protected override void OnEnable()
    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.OnEnable()

    OnTrackablesChanged(List<ARPlane>, List<ARPlane>, List<ARPlane>)

    Invoked when the base class detects trackable changes.

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

    The list of added ARPlanes.

    List<ARPlane> updated

    The list of updated ARPlanes.

    List<ARPlane> removed

    The list of removed ARPlanes.

    Overrides
    UnityEngine.XR.ARFoundation.ARTrackableManager<UnityEngine.XR.ARSubsystems.XRPlaneSubsystem, UnityEngine.XR.ARSubsystems.XRPlaneSubsystemDescriptor, UnityEngine.XR.ARSubsystems.XRPlaneSubsystem.Provider, UnityEngine.XR.ARSubsystems.BoundedPlane, UnityEngine.XR.ARFoundation.ARPlane>.OnTrackablesChanged(System.Collections.Generic.List<UnityEngine.XR.ARFoundation.ARPlane>, System.Collections.Generic.List<UnityEngine.XR.ARFoundation.ARPlane>, System.Collections.Generic.List<UnityEngine.XR.ARFoundation.ARPlane>)

    Raycast(Ray, TrackableType, Allocator)

    Performs a raycast against all currently tracked planes.

    Declaration
    public NativeArray<XRRaycastHit> Raycast(Ray ray, TrackableType trackableTypeMask, Allocator allocator)
    Parameters
    Type Name Description
    UnityEngine.Ray ray

    The ray, in Unity world space, to cast.

    TrackableType trackableTypeMask

    A mask of raycast types to perform.

    Unity.Collections.Allocator allocator

    The Allocator to use when creating the returned NativeArray.

    Returns
    Type Description
    Unity.Collections.NativeArray<XRRaycastHit>

    A new NativeArray of raycast results allocated with allocator. The caller owns the memory and is responsible for calling Dispose on the NativeArray.

    See Also
    Raycast(Ray, List<ARRaycastHit>, TrackableType)
    Raycast(Vector2, List<ARRaycastHit>, TrackableType)

    Events

    planesChanged

    Invoked when planes have changed (been added, updated, or removed).

    Declaration
    public event Action<ARPlanesChangedEventArgs> planesChanged
    Event Type
    Type Description
    Action<ARPlanesChangedEventArgs>
    Back to top Copyright © 2023 Unity Technologies — Terms of use
    Generated by DocFX
    on Monday, May 22, 2023