Unit 1: Player Control
By the end of this Unit, you will be able to:
Navigate 3D space and the Unity Editor comfortably
Add and manipulate objects in the scene to position them where you want, including the camera
Control the layout of Unity Editor to suit your needs
Create C# scripts and apply them to objects
Use Visual Studio and a few of its basic features
Add Rigidbody and Collider components to allow objects to collide realistically
Declare variables properly and initialize/assign them with appropriate access modifiers
Unit 2: Basic Gameplay
By the end of this unit, you will be able to:
Create an if-then statement in order to implement basic logic in your project, including the use of greater than (>) and less than (<) operators
Transform a gameobject into a prefab that can be instantiated into the scene
Work with prefabs to add efficiencies in your workflows
Get user input with GetKey and KeyCode to test for specific keyboard presses
Use arrays to create an accessible list of objects or values and randomly select an object from that array
Randomly generate values to randomize spawn positions
Change the camera’s perspective to better suit your game
Repeat functions on a timer with InvokeRepeating
Write custom methods to make your code more readable
Detect collisions and destroy objects that collide with each other
Display messages in the console with Debug Log
Unit 3: Sound and Effects
By the end of this unit, you will be able to:
Use GameObject.Find and GetComponent to manipulate the components of the current or other game objects
Tweak the gravity of your project with Physics.gravity and use ForceModes to apply forces in different ways
Utilize new operators like “&&” and bool variables to better control game logic
Freeze or constrain the RigidBody component to halt movement on certain axes
Use tags to label game objects and call them in the code
Use script communication to access the methods and variables of other scripts
Manage animation states in the Animator Controller, including adjusting the states’ parameters and default state
Use SetTrigger, SetBool, and SetInt methods to trigger transitions between animation states
Stop and play particle effects to correspond with character animation states
Work with Audio Sources and Listeners to play background music
Add sound effects to add polish to your project
Unit 4: Gameplay Mechanics
By the end of this unit, you will be able to:
Apply Physics Materials to make game objects more or less bouncy
Calculate new vectors to steer objects in custom directions
Write more advanced custom functions and variables to make your code clean and professional
Write informative debug messages with Concatenation
Use IEnumerator and Coroutines to repeat and delay functions
Use for loops to efficiently and dynamically run code multiple times
Use SetActive to make game objects appear and disappear from the scene
Use FindObjectsOfType to track the current number of objects in the scene
Unit 5: User Interface
By the end of this unit, you will be able to:
Create a Game Manager object that controls game states
Detect where the user has clicked their mouse in order to create a click-based program
Use the Canvas to create UI elements like a Title, Buttons, or score display
Lock elements and objects into place on the UI with Anchors
Use variables and script communication to update elements in the UI
Make UI elements appear and disappear with .SetActive
Use script communication and Game states to implement working “Game Over” screen
Restart the game using a UI button and SceneManagement class
Add listeners to detect when a UI Button has been clicked and trigger functionality
Set difficulty of gameplay from title screen by passing parameters between scripts