---
# System prepended metadata

title: '(3) Scripting Lab: Coding in Unity, the Basics'

---

# (3) Scripting Lab: Coding in Unity, the Basics

Code & Visual Scripting (10-15+ minutes) (would need computers)
- Using Unity's own visual scripting add-on, have students build a script to rotate a cube

[4 computers? 3 students per computer. control room?]


## Notes on visual scripting - aka, What is Visual Scripting? And Why Use It?

- Allows you to create the logic for Unity projects without writing actual code
    - Unity scripting typically done in C# programming language
    - Visual scripting lets you diagram your instructions
    - Helpful for visual learners; empowers non-coders; gives coders better way to collaborate with artists, designers, and other non-coders
    - Provides access to entire Unity Scripting API--definitions of classes, events, methods (behaviors), and properties (settings) you can manipulate with Unity scritps
    - Visual scripting can also help you start learning how to use C#

- Node-based graphs instead of traditional C# scripts
- Useful for both programmers and non-programmers
- Particularly useful for rapid implementation and prototyping of interactive systems, etc.
    - animators and game designers test and implement behaviors without learning C#
    - can also be used with traditional C#; programmers can attach visual scripting graphs to C-sharp scripts, so animators and designers can also interact with scripts
- Useful for learning C#
    - easier to get started, helps you understand C# better; 
- Useful for creating templates for others
    - create extensions, tools, templates that everyone can use (even without C# experience)

## Visual Scripting Tutorial Steps
1. New empty scene; create a cube
2. position the cube and camera to get a good view of cube in play mode
3. Create "Machine" component & add to the cube (with cube selected, go to Inspector and Add Component > Visual Scripting > Scirpt Machine)
    - a machine runs a visual script; carries out instructions in the visual script
    - visual script also known as a "Graph"
    - will add scripting symbol (<>) to your game object in scene view
    - note: the Machine is the component; the graph is an asset that can be used in multiple machines
4. Create the Graph
    - In script machien component, select New to greate graph
    - create a folder called VisualScripts
    - Save your graph using the name "Rotation" to create a new file named Rotation.asset
    - Script machine will now include fields for Title and Summary - title your graph ("Rotate the Cube") and the summary ("Make the cube rotate")
    - select Edit Graph button - opens Script graph window
5. Script Graph
    - The sript graph includes three panels:
        - Graph window (the area where you build your graph)
        - Graph inspector (providing additional info about the units in your graph as you edit)
        - Blackboard (panel for creating and managing variables)
    - In the Script Graph, add a new node
        - Cube>Transform>Rotate (X angle, Y angle, Z angle)
        - Add new "graph variable"
            - Name "xrotate" 
            - Type "float"
            - Set value 

        - Drag Variable onto Graph Window

        - Connect variable to "X angle" of transform node

    - Connect "on Update" arrow to "Transform" arrow