docs.unity3d.com
  • Manual
  • Scripting API
  • Changelog
  • License
    Show / Hide Table of Contents
    • About Visual Scripting
      • Configure project settings
        • Add or remove available nodes
        • Add or remove types
        • Create or restore a backup
      • Choose a control scheme
      • Configure your preferences
      • Update Visual Scripting
      • Version control systems
      • Use Visual Scripting with Unity Cloud Build
    • Basic concepts in Visual Scripting
      • The interface
      • Nodes
      • Graphs
        • Subgraphs and State Units
        • Transitions
      • Script Machines and State Machines
      • Object types
        • Custom types
      • Variables
    • Develop application logic with Script Graphs
      • Create a new graph file
        • Create a new blank graph with the Project window
        • Create a new unassigned graph with the empty graph creation flow
        • Create and assign a graph to an existing Game​Object
        • Create and assign a graph to a new Game​Object
        • Create a graph on a Script Machine or State Machine
      • Attach a graph file to a Script Machine or State Machine
      • Open a graph file
        • Add a node to a Script Graph
        • Connect nodes in a Script Graph
        • Create and add a variable to a Script Graph
        • Create node groups
      • Add a Subgraph to a Script Graph
        • Add a Trigger or Data port to a Script Graph
      • Add a State Unit to a Script Graph
      • Custom Events
        • Add a Custom Event node
        • Add a Trigger Custom Event node
      • Capture user input in an application
        • Capture input using the Input Manager
        • Add and configure a Player Input component
        • Capture input using the Input System package
      • Use relations to debug
        • Predictive and live debugging
        • Working with debug messages
      • Live edit
        • Live edit during runtime
    • Develop logic transitions with state graphs
      • Create a new state
      • Create a transition between states
    • Advanced customization and development
      • Refactor a C# script with Visual Scripting
        • Add the Renamed​From attribute to a C# script
      • Custom C# nodes
        • Create a new simple Custom C# node
        • Add ports to your Custom C# node
        • Add logic to your Custom C# node
        • Add relations to your Custom C# node
        • Add documentation to your Custom C# node
        • Custom C# node attributes reference
      • Create a Custom Scripting Event node
        • Create a Custom Scripting Event Sender node
        • Trigger a Custom Scripting Event from a C# script
        • Listen to a Custom Scripting Event from a C# script
      • Use a custom type
        • Add the Inspectable attribute to a custom type
        • Create a custom Property​Drawer for a custom type
    • Node reference
      • This node
      • Control node
      • Time node
      • Events
        • Event nodes
        • Input Event nodes
          • On Input System Event Button
          • On Input System Event Float
          • On Input System Event Vector 2
          • On Button Input
          • On Keyboard Input
          • On Mouse Down
          • On Mouse Drag
          • On Mouse Enter
          • On Mouse Exit
          • On Mouse Input
          • On Mouse Over
          • On Mouse Up As Button
          • On Mouse Up
      • Variable node
      • Nulls node
      • Formula node
      • Nesting
        • Input node
        • Output node
        • State Unit node
        • Subgraph node
      • Script graph nodes
      • State graph nodes
    • Developer's guide
    • Manual
    • Develop application logic with Script Graphs
    • Attach a graph file to a Script Machine or State Machine

    Attach a graph file to a Script Machine or State Machine

    To use a Script Graph or State Graph file in your project, you must attach it to a Script Machine or State Machine.

    A Script Machine or State Machine is a component. Components attach to GameObjects, and help define their behavior. For more information on components and GameObjects, see Using components or GameObjects in the Unity User Manual.

    Add a Script Machine or State Machine component to a GameObject

    1. Go to Window > General > Hierarchy, or press Ctrl+4 (macOS: Cmd+4) to open the Hierarchy window.

    2. In the Hierarchy window, select a GameObject where you'd like to add a Script Machine or State Machine.

    3. With the GameObject selected in the Hierarchy window, go to Window > General > Inspector, or press Ctrl+3 (macOS: Cmd+3) to open the Inspector window.

    4. In the GameObject's Inspector window, select Add Component.

      The Components menu opens.

    5. Do one of the following:

      • To add a Script Machine or State Machine, in the Components menu, go to Visual Scripting and select Script Machine or State Machine.
      • Use the search bar to find the Script Machine or State Machine component.

    The new Script Machine or State Machine component appears in the Inspector window for the GameObject:

    A new blank Script Machine component in the Inspector window for a GameObject

    Attach a graph file to the Script Machine or State Machine

    1. In the Inspector window, locate your Script Machine or State Machine component.

    2. Set the Source to Graph.

    3. Do one of the following:

      • In the Graph field, select the object picker (circle icon) and choose a compatible graph file from your project.
      • Click and drag a file from your Project window and drop it into the Graph field.

    For more information on how to create Script or State Graphs, see Create a new graph file.

    Next steps

    After you attach a graph to a Script Machine or State Machine, you can open the graph and edit. For more information, see Open a graph file.

    In This Article
    • Add a Script Machine or State Machine component to a GameObject
    • Attach a graph file to the Script Machine or State Machine
    • Next steps
    Back to top
    Terms of use
    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