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 GameObject
      • Create and assign a graph to a new GameObject
      • 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 comments to a graph
    • 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 RenamedFrom 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 PropertyDrawer 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
  • Known Issues

Choose a control scheme

You can choose from two different control schemes in Visual Scripting. Each control scheme changes how you can interact with your graphs in the Graph Editor:

Action Default Control Scheme Alternate Control Scheme
Pan Middle-click and drag Middle-click and drag
Pan Vertically Scroll N/A
Zoom In/Zoom Out Ctrl+Scroll (macOS: Cmd+Scroll) Scroll
Frame Selected Home Home
Frame All Home Home
Create Selection Click and drag Click and drag
Select All Ctrl+A (macOS: Cmd+A) Ctrl+A (macOS: Cmd+A)
Open Context Menu Right-click
Ctrl+click (macOS)
Ctrl+E (macOS: Cmd+E)
Right-click
Ctrl + click (MacOS)
Ctrl+E (macOS: Cmd+E)
Create Node Group Ctrl+click and drag (macOS: Cmd+click and drag) Ctrl+click and drag (macOS: Cmd+click and drag)
Copy Selected Ctrl+C (macOS: Cmd+C) Ctrl+C (macOS: Cmd+C)
Paste Selection Ctrl+V (macOS: Cmd+V) Ctrl+V (macOS: Cmd+V)
Cut Selected Ctrl+X (macOS: Cmd+X) Ctrl+X (macOS: Cmd+X)
Duplicate Selected Ctrl+D (macOS: Cmd+D) Ctrl+D (macOS: Cmd+D)
Delete Selected Del Del
Maximize Graph Window Shift+Space
Double-click
Shift+Space
Double-click
Move Group Without Child Nodes Alt+click and drag the group's Title bar Ctrl+click and drag the group's Title bar (macOS: Cmd+click and drag)
Move Node on One Axis Shift+click and drag vertically or horizontally Shift+click and drag vertically or horizontally

Pan

Pan to move the viewable area in the Graph Editor to any part of your graph.

Pan Vertically

With the Default control scheme, pan the view in the Graph Editor vertically with the scroll wheel on your mouse.

Zoom In/Zoom Out

Change the zoom level in the Graph window to control how much of your graph is visible in the Graph Editor.

You can also set your zoom level with the toolbar in the Graph window. For more information, see The interface.

Frame Selected

After you select a node or another item in your graph, press Home to center your selected item in the Graph Editor.

An image of the Graph window, with a Set Variable node selected and framed in the center of the Graph Editor.

Frame All

With no nodes or items selected, press Home to center your entire graph in the Graph Editor. Your zoom level automatically adjusts to accommodate the size of your graph.

An image of the Graph window, with its entire Script Graph displayed in the Graph Editor. The zoom level has been set to 0.4x to display the entire graph.

Create Selection

Click and drag to create a selection box around any nodes or items in your graph that you want to select.

An image of the Graph window, with a selection box created around 4 nodes in the Graph Editor

When you have multiple items selected, click and drag a single item to move the entire selection.

Select All

Press Ctrl+A (macOS: Cmd+A) to select all items in your current graph.

Open Context Menu

You can open the context menu to perform certain actions on State Graphs or manipulate a selection in a Script Graph. You can create new states and add transitions.

An image of the Graph window. The context menu is open and displays the options for a selection in a Script Graph.

Create Node Group

Create a group of nodes to keep related sections of your graph together, or move multiple nodes at a time. For more information on node groups, see Create node groups.

An image of the Graph window. A node group has been created around three nodes and named "Variable Input."

Copy Selected

Copy your current selection to move it to another graph, or another location on your current graph.

Paste Selection

Paste the contents of a copied or cut selection into your graph.

Cut Selected

Cut your current selection to move it to another graph, or another location on your current graph.

Duplicate Selected

Duplicate a selection to instantly create a copy of your current selection to use elsewhere in your current graph.

An image of the Graph window. Three selected nodes have been duplicated and sit on top of the original nodes.

Delete Selected

Delete your current selection to remove it from your graph.

Maximize Graph Window

After you dock the Graph window in the Unity Editor, press Shift+Space or double-click maximize your Graph window and take up the entire Editor window.

Move Group Without Child Nodes

You can move a group in your graph without any of the nodes contained inside that group.

An image of the Graph window with a node group moved to another location without its child nodes.

Move Node on One Axis

Shift+click to move a node in only one direction at a time in the Graph Editor. The node can move either vertically or horizontally.

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