Class DecisionController | AI Planner | 0.2.4-preview.3
docs.unity3d.com
    Show / Hide Table of Contents

    Class DecisionController

    The primary component from the AI Planner package, governing planning and plan execution.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    DecisionController
    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
    Component.rigidbody
    Component.rigidbody2D
    Component.camera
    Component.light
    Component.animation
    Component.constantForce
    Component.renderer
    Component.audio
    Component.networkView
    Component.collider
    Component.collider2D
    Component.hingeJoint
    Component.particleSystem
    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.FindObjectsOfType(Type, Boolean)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    UnityEngine.Object.FindObjectsOfType<T>(System.Boolean)
    Object.FindObjectOfType<T>()
    UnityEngine.Object.FindObjectOfType<T>(System.Boolean)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindObjectOfType(Type, Boolean)
    Object.ToString()
    Object.name
    Object.hideFlags
    Namespace: Unity.AI.Planner.Controller
    Syntax
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.ai.planner@0.2/manual/ConfigureScene.html")]
    [AddComponentMenu("AI/Decision Controller")]
    public sealed class DecisionController : MonoBehaviour

    Properties

    AutoUpdate

    Define if the controller should automatically schedule planning and execute the current plan. If false, the scheduler can be updated via UpdateScheduler(Boolean) and, similarly, the execution can be updated via UpdateExecutor(Boolean).

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

    CurrentActionKey

    The action key for the current action being executed.

    Declaration
    public IActionKey CurrentActionKey { get; }
    Property Value
    Type Description
    IActionKey

    CurrentPlan

    The current plan to be executed.

    Declaration
    public IPlan CurrentPlan { get; }
    Property Value
    Type Description
    IPlan

    CurrentStateData

    State data for the controller's current state.

    Declaration
    public IStateData CurrentStateData { get; }
    Property Value
    Type Description
    IStateData

    CurrentStateKey

    The state key of the current state, as used by the controller to track the execution of the plan.

    Declaration
    public IStateKey CurrentStateKey { get; }
    Property Value
    Type Description
    IStateKey

    Initialized

    Indicates if the decision controller has been initialized.

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

    IsIdle

    Returns whether the controller is currently idle (i.e. not planning and not executing actions)

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

    PlanExecutionSettings

    Settings for control of the execution of plans.

    Declaration
    public PlanExecutionSettings PlanExecutionSettings { get; set; }
    Property Value
    Type Description
    PlanExecutionSettings

    PlanExecutionStatus

    Status of the execution fo the current plan.

    Declaration
    public PlanExecutionStatus PlanExecutionStatus { get; }
    Property Value
    Type Description
    PlanExecutionStatus

    PlannerSettings

    Settings for the control of the planning algorithm iterating on the current plan.

    Declaration
    public PlannerSettings PlannerSettings { get; set; }
    Property Value
    Type Description
    PlannerSettings

    Methods

    Initialize()

    Initialize and create the executor instance

    Declaration
    public void Initialize()

    UpdateExecutor(Boolean)

    Updates execution of the plan. If the plan execution criteria are satisfied, the executor will enact the next action of the plan.

    Declaration
    public void UpdateExecutor(bool forceAct = false)
    Parameters
    Type Name Description
    Boolean forceAct

    Force the execution of the next action in the plan.

    UpdateScheduler(Boolean)

    Updates the planner scheduler. If the previous planning job has not finished, the scheduler will not scheduler new planning jobs unless forceComplete is true.

    Declaration
    public void UpdateScheduler(bool forceComplete = false)
    Parameters
    Type Name Description
    Boolean forceComplete

    Force the scheduler to complete previous planning jobs before scheduling new iterations.

    UpdateStateWithWorldQuery()

    Uses a world query to update the current state used for planning and acting.

    Declaration
    public void UpdateStateWithWorldQuery()

    Events

    stateUpdated

    An event triggered after the current state has been updated

    Declaration
    public event Action stateUpdated
    Event Type
    Type Description
    Action
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • 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 18 October 2023