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

On Mouse Up node

Note

The On Mouse Up node is an Input Manager node. For more information about how to use the Input Manager with Visual Scripting, see Capture user input in an application.

The On Mouse Up node listens for a user to release their mouse button after they click a Collider in your application. It triggers the next node connected to it after the action occurs in the application. It doesn't send or receive any other data.

The user can release their mouse button anywhere in your application to trigger the On Mouse Up node. If you want the node to trigger after the user releases the mouse button over the same Collider specified in the node's Target, use the On Mouse Up As Button node instead.

An image of the Graph window. An On Mouse Up node displays with its details in the Graph Inspector.

Fuzzy finder category

The On Mouse Up node is in the Events > Input category in the fuzzy finder.

Inputs

The On Mouse Up node has one input port:

Name Type Description
Target GameObject The GameObject the user needs to click with their mouse button to have the On Mouse Up node listen for a mouse button release action. The user can release their mouse button anywhere to trigger the On Mouse Up node, but they must click the GameObject specified as the Target.

Additional node settings

The On Mouse Up node has additional settings. Access these settings from the Graph Inspector:

Name Type Description
Coroutine Toggle Enable Coroutine if you want Visual Scripting to run this node and any of its connected nodes as a coroutine. Coroutine nodes don't execute all their code in a single frame, so they can spread an effect over several frames. Coroutines can also help optimize your code. For more information on coroutines, refer to the Unity User Manual section on Coroutines.

Outputs

The On Mouse Up node has one output port:

Name Type Description
Trigger Output Trigger The control output port. Make a connection to specify what Visual Scripting should do after the configured Input event occurs in your application.

Example graph usage

In the following example, the On Mouse Up node adds a force to a GameObject based on the user's mouse position when they release their mouse button. The On Mouse Up node triggers a Camera Screen To World Point node to get the user's mouse position, before it sends the X value of the mouse to a Rigidbody Add Force node to move the GameObject.

An image of the Graph window. An On Mouse Up node has its Target set to This. Its Trigger output node connects to the Invoke input port on a Camera Screen To World Point node. The Screen To World Point node gets its Target input from a Get Variable input node, which outputs the value of the MainCamera variable. The Screen To World Point node gets its Position Input from a Vector 3 Create node. The Vector 3 Create node takes its X input from an Input Get Mouse Position node, with a Vector 3 Get X node to get only the X value. It does the same for its Y input, with a Vector 3 Get Y node. The Screen To World Point node's Exit output trigger triggers the Invoke input port on a Rigidbody Add Force node, with its Target set to This and its Force Mode set to Velocity Change. The Rigidbody Add Force node takes an X input from the Screen To World Point Vector 3 Result output port, with a Vector 3 Get X node.

When the user clicks on the sphere in the middle of the scene and releases their mouse button, the sphere moves towards their mouse location.

An image of the Game view. Three red spheres sit on a plane. The middle sphere moves towards the sphere on the right and the mouse cursor.

Related nodes

The following nodes are related or similar to the On Mouse Up node:

  • On Button Input node
  • On Keyboard Input node
  • On Mouse Down node
  • On Mouse Drag node
  • On Mouse Enter node
  • On Mouse Exit node
  • On Mouse Input node
  • On Mouse Over node
  • On Mouse Up As Button node
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