docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Namespace Unity.Behavior

    Classes

    Action

    The base class for action nodes used in Behavior Graphs.

    BehaviorGraph

    BehaviorGraph holds all the runtime graph instances linked together into a complete behaviour defined within a BehaviorAuthoringGraph.

    BehaviorGraphAgent

    Manages a behavior graph's lifecycle on a GameObject and handles data through blackboard variables.

    The BehaviorGraphAgent maintains the following lifecycle states:

    - Uninitialized - The graph has been assigned but not instantiated yet

    - Initialized - The graph has been instantiated with a unique copy for this agent

    - Started - The graph has started running

    - Running - The graph is being updated each frame via Tick()

    - Ended - The graph has been stopped and is no longer running

    Initialization Sequence:

    - When a graph is assigned in the Inspector, it's automatically initialized during Awake()

    - When assigning a graph via the Graph property at runtime, it's automatically initialized during the next Update()

    - You can also explicitly control initialization by calling Init() manually

    Blackboard Variable Handling:

    - Before initialization: SetVariableValue() sets agent-level overrides (visible in the Inspector)

    - After initialization: SetVariableValue() sets values in the instanced graph's blackboard

    BehaviorGraphCollisionEvents

    This class is used to dispatch collision events to the behavior graph.

    Blackboard

    A data structure holding variables used by the Behavior Graph.

    BlackboardEnumAttribute

    The attribute specified when creating Blackboard enums. Apply this attribute above newly created enums to ensure they can be recognized and parsed by the Blackboard.

    BlackboardReference

    A reference to a Blackboard.

    BlackboardVariable

    A variable used within a blackboard.

    BlackboardVariable<DataType>

    A base class for blackboard variables serialized by value.

    ComparisonAttribute

    The ComparisonAttribute contains metadata for the comparison operator element used in conditions.

    Composite

    Composite nodes serves as a control structure that manages the flow and organization of other nodes within the tree.

    Condition

    The base class for conditions used in Conditional and Abort nodes.

    ConditionAttribute

    The ConditionAttribute contains metadata for conditions used in Behavior graphs.

    ConditionUtils

    A utility class for conditions used in Conditional nodes.

    DynamicBlackboardVariableOverride

    A variable override used for initializing Blackboards on subgraphs that are running dynamically.

    EnumLinkField<TValueType>

    A link field class specialized for enum types.

    EventAction

    Event actions are used to send and receive event messages.

    EventChannel

    Event channels are used to send and receive event messages.

    EventChannelBase

    Event channels are used to send and receive event messages.

    EventChannelDescriptionAttribute

    The EventChannelDescriptionAttribute contains metadata for event channels used in Behavior graphs.

    EventChannel<T0>

    Generic implementation of EventChannelBase. Event channels are used to send and receive event messages.

    EventChannel<T0, T1>

    Generic implementation of EventChannelBase. Event channels are used to send and receive event messages.

    EventChannel<T0, T1, T2>

    Generic implementation of EventChannelBase. Event channels are used to send and receive event messages.

    EventChannel<T0, T1, T2, T3>

    Generic implementation of EventChannelBase. Event channels are used to send and receive event messages.

    GameObjectExtensions

    Useful methods for GameObjects.

    Join

    A node that can have multiple inputs nodes.

    Modifier

    Modify the behavior of its child nodes.

    Node

    A base class for behaviour nodes used in the Behavior graph.

    NodeDescriptionAttribute

    The NodeDescriptionAttribute contains metadata for nodes used in Behavior graphs.

    RuntimeBlackboardAsset

    RuntimeBlackboardAsset is the runtime version of BehaviorBlackboardAsset. The data is baked at authoring time.

    RuntimeSerializationUtility

    Contains all interfaces and helper objects for runtime serialization of behavior graphs.

    RuntimeSerializationUtility.JsonBehaviorSerializer

    Implementation for JSON serializer.

    TriggerEventAction

    Event actions are used to send and receive event messages.

    WaitForAllComposite

    Activates its child when all parents have started this node. It cannot restart until the child's subgraph has ended.

    Interfaces

    IConditionSerializationCallbackReceiver

    Interface for conditions use by Behavior nodes that need to handle custom serialization/deserialization logic. Implement this interface on condition classes that contain state which cannot be automatically serialized, or that need to pre-process data before serialization.

    Note: These callbacks are only invoked for conditions that are part of a running node. Standard runtime registration logic should still be implemented in the Condition's OnStart/OnEnd methods.

    IEventHandlerWithoutNotify

    Interface for event channels that support creating event handlers without triggering notifications.

    RuntimeSerializationUtility.IBehaviorSerializer<TSerializedFormat>

    Interface for behavior serializor implementations.

    RuntimeSerializationUtility.IUnityObjectResolver<TSerializedFormat>

    Interface for all object resolvers. During runtime serialization, an object resolver is required to convert an object to and from a unique ID.

    Enums

    ComparisonType

    The comparison type of Comparison Operator.

    ConditionOperator

    Represents the different operators that can be used to compare values.

    Node.Status

    Status of a graph node.

    Delegates

    BlackboardVariable.ValueChangedCallback

    Delegate for blackboard variable value changes.

    EventChannel.EventHandlerDelegate

    Represents the method that will handle events.

    EventChannel<T0>.EventHandlerDelegate

    Represents the method that will handle events with one parameters of type T0.

    EventChannel<T0, T1>.EventHandlerDelegate

    Represents the method that will handle events with one parameters of types T0 and T1.

    EventChannel<T0, T1, T2>.EventHandlerDelegate

    Represents the method that will handle events with one parameters of types T0, T1 and T2.

    EventChannel<T0, T1, T2, T3>.EventHandlerDelegate

    Represents the method that will handle events with one parameters of types T0, T1, T2 and T3.

    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)