docs.unity3d.com
    Show / Hide Table of Contents

    Create a new simple Custom C# node

    You can create a Custom C# node to run your own custom logic in a Script Graph. For more information on Custom C# nodes, see Custom C# nodes.

    To create a new simple Custom C# node:

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

    2. Right-click a folder in the Project window's folder list, or anywhere in the Project window's preview pane, and go to Create > C# Script.

    3. Enter a name, such as MyNode, for the new script file.

    4. Press Enter.

    5. Double-click the new C# file. Unity opens the file in the program you specified in your preferences, under External Script Editor.

      Note

      For more information on script editors in Unity, see the Integrated development environment (IDE) support in the Unity User Manual.

    6. In your external editor, copy and paste the following code into your C# script:

      using Unity.VisualScripting;
      using UnityEngine;
      
      public class MyNode : Unit
      {
         protected override void Definition() //The method to set what our node will be doing.
         {
         }
      }
      
    7. Save your script file.

    8. Return to the Unity Editor.

    9. Follow the process described in Configure project settings to regenerate your Node Library.

      Note

      If you don't regenerate your Node Library, the node won't appear in Visual Scripting's fuzzy finder.

    10. Open a Script Graph where you want to add your new node.

    11. Right-click anywhere in the Graph Editor to open the fuzzy finder.

    12. The node appears as My Node at the end of the fuzzy finder list. Select the node to add it to your graph.

      An image of the Graph window. The fuzzy finder is open and displays the Custom C# node, My Node, at the end of the list of all available nodes. The node has also been added to the Script Graph, but has no ports.

    Next steps

    After you create the basic start to a node and add it to Visual Scripting's fuzzy finder, add ports so your node can send and receive data.

    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