LogoLogo
HomeDiscordVideo TutorialsBuilder Opportunities
  • Welcome to MONA
    • What is a Space?
    • Unity Overview
  • ⬛Create
    • Getting Started Building
    • MONA Crash Course
      • Setting up MONA in Unity
      • Introduction to Unity
      • Setting up Simple Assets
      • Metaverse / WebGL Limitations
      • Creating 3D Assets
      • Applying Materials & Unwrapping UVs
      • Importing Assets into Unity
      • Adding Colliders
      • Adding Lighting
      • Adding a Custom Skybox
      • Setting up Canvases
      • Uploading to your Wallet
    • Building Spaces
      • Space Limitations
      • Create your Space
        • Space Overview
        • Colliders
        • Materials
        • Portals
        • Canvases
        • Artifacts
        • Add a Custom Skybox
        • Test Your Space
        • Troubleshooting
      • Improve your Space
        • Lightmaps (Unity Lightmapper)
        • Light Probes
        • Reflection Probes
        • Animation in Unity
        • Importing Animation
        • Player Property Volumes (PPV's)
        • Warp Volumes
        • Adding Audio
        • VRM Switcher
        • Custom Canvases
        • Embedded Video
        • User Interface (UI)
        • Creating Custom Shaders
        • Imported Assets
        • Lightmaps (Bakery Asset)
      • Optimise your Space
        • Prefabs
        • 3D Asset Specs
        • Optimizing your Space
      • Adding Interactivity
        • Visual Scripting
          • Web Request Node
        • Mona Reactor
          • Creating Animation
          • Using Animator
          • The Reactor Component
          • Reactor Overview
      • MONA Tools
        • Template Utility
        • MONA Capture
        • Light Probe Generator
        • VOX Importer
      • Submit Your Space
        • Submitting your Space
        • Creating an Image & Video Preview
        • QA Process
        • Mint Your Space
      • Update your Space
      • Frequently Asked Questions
      • Troubleshooting
    • Creating Assets
      • Asset Requirements
      • 3D Asset Types
      • Asset Creation Approaches
      • Optimizing your Mesh
      • GLB Considerations
      • Example - Cyberpunk Car
    • Creating Avatars
      • Getting Started with VRM
      • VRM Requirements
      • VRM Creation
        • Using Mixamo for Rigging
        • Adding Custom Bones to the Rig (Optional)
      • Creating your Avatar using UniVRM
        • Importing UniVRM into Unity
        • Creating the VRM using UniVRM
        • Adding Spring Bones in UniVRM (Optional)
      • Creating your Avatar using 'VRM for Blender'
        • Adding 'VRM for Blender' into Blender
        • Using 'VRM for Blender' for Rigging
        • Adding a Material
        • Assigning VRM Details
        • Exporting the Avatar
      • Uploading your VRM
      • Using Avatars in WebAR
      • Submitting your VRM to the Mona Marketplace
      • Mint Your Avatar
      • Troubleshooting
    • Resources
      • MONA Claim Asset Requirements
      • Unity Wallet SDK (Alpha)
      • MONA Playground
      • MONA Tutorials
        • Retrowave Modules
      • Asset Resources
        • 3rd Party Assets
        • Textures
        • Shaders
        • 3D Assets
        • Audio
        • Tools
        • Tutorials
      • MONA Library
        • MONA Library Submission
      • Useful Unity Packages
      • Updating the Template SDK
      • Importing Mozilla Hubs Spaces to MONA
      • Importing AltspaceVR spaces to MONA
    • MONA Marketplace
  • ⬛Explore
    • How to Use MONA
    • Using VRM Avatars
    • Audio Settings
    • Explorer's Frequently Asked Questions
  • ⬛Collect
    • Setting up a wallet
      • Delegating a Wallet
    • Own a Space
      • Host an Event
      • Uploading your Images
      • Add Images to a Canvas
      • Live Music Feed
      • Token Gated Access
      • Minted 3rd Party Assets
    • MONA Create
      • Create FAQ
    • Live Streaming in MONA
      • Setting up OBS Studio
      • Livestream using OBS Studio
      • Livestream using a Mobile Device
      • How to Stream Using Twitch or YouTube
      • Add a Livestream to a Canvas
    • Collector's Frequently Asked Questions
  • General Resources
    • Web3 Introduction
    • How to sell Art in Web3
    • Game Dev Glossary
    • Buildathons / Challenges
      • 3D Asset Buildathon (Current)
        • Frequently Asked Questions
      • Emote/Emoji Challenge (Completed)
      • Stream Challenge (Completed)
      • Custom Avatars (Completed)
      • Build : NY Challenge (Completed)
      • Sculpture Challenge (Completed)
      • Portal Hub (Completed)
      • Interact (Completed)
      • The Renaissance (Completed)
Powered by GitBook
On this page
  • Importing the Visual Scripting Asset to Unity3D
  • Adding a Visual Scripting graph
  • The Node Graph
  • Adding Nodes
  • Supported Nodes

Was this helpful?

  1. Create
  2. Building Spaces
  3. Adding Interactivity

Visual Scripting

PreviousAdding InteractivityNextWeb Request Node

Last updated 1 year ago

Was this helpful?

The new Monaverse Developer Kit includes the ability to create custom experiences using Visual Scripting.

Visual scripting is a method of creating game logic using a visual interface instead of writing code in another programming language. This makes it easier for creators to make incredible experiences, all inside Unity 3d.

Visual Scripting is available in all Mona spaces using the Unity 2022 Mona SDK.

Note: Please update to the latest version of the Mona SDK here before using Visual Scripting:

Importing the Visual Scripting Asset to Unity3D

  • You may need to import the Visual Scripting asset from the Package Manager. Go to 'Window/Package Manager' and select 'Packages : Unity Registry' at the top.

  • Scroll down to 'Visual Scripting', then select 'Install' at the top right of the window.

Adding a Visual Scripting graph

Visual Scripting is done as a component on an asset. For the purposes of this tutorial, we will add a graph to a simple cube, but of course you can add it to anything you want.

  • With the asset selected, select 'Add Component' in the Inspector.

  • Type in 'Script machine' (or enough to pull that up or scroll down to the 'Visual Scripting' menu and select 'Script Machine'.

  • The source defines where the graph is found.

    • Embed adds the script to the asset itself. You can add a Title and a Summary if you wish.

  • The other source option is Graph.

    • Graph creates an external graph file that you could use on other assets.

    • If you select Graph, select 'New' to save your new visual script graph to your assets. The Title and the Summary are available in the graph itself.

  • At the base you have 'Edit Graph' which is where you start creating your nodes.

The Node Graph

The Node Graph is where all the magic happens. Think of it much like a story going from left to right where each node happens over time.

There are two base nodes, On Start and On Update :

  • 'On Start' happens once at the very beginning of the assets 'life'. Anything that you need to setup for the asset initially stems from here.

  • 'On Update' happens every time the frame is updated, so these nodes will be played out all the time.

Adding Nodes

  • There are two ways to add a node :

    • Right click on the graph and then search for the node you are after

    • Drag an arrow from a node, once you let go you can search for the node you are after.

  • If you create nodes without using the connection you can connect nodes simply by dragging from the arrows to the left and right of nodes.

  • It is possible to delete connections by right clicking on the arrows on the left/right of the node.

  • You can create Groups easily by holding Ctrl and left drag to create a Group node. If this surrounds multiple nodes, you can move them all easily.

    • You can rename the group by clicking the label once.

    • Delete the group by selecting it and pressing 'Delete', or right click and select 'Delete'.

Supported Nodes

  • mscorlib

  • UnityEngine.CoreModule

  • UnityEngine.AudioModule

  • UnityEngine.PhysicsModule

  • UnityEngine.AnimationModule

  • UnityEngine.UIModule

  • UnityEngine.UI

  • Unity.TextMeshPro

At the moment the Nodes you can use are limited, and growing every day. If there is a Node that you would like to use that isn't included you can easily request it in our , or submit a request . Currently the main node types fall under the following categories :

⬛
Discord
here
https://github.com/monaverse/SpaceStarter
Embed Options
Graph Options
The Visual Scripting Node Graph