Computer Science Grade 6 20 min

Game Development Tools: Unity and Unreal Engine

Get hands-on experience with popular game development tools like Unity and Unreal Engine, learning how to build and deploy games using these engines.

Tutorial Preview

1

Introduction & Learning Objectives

Learning Objectives Describe the purpose of a game engine's main loop. Explain the relationship between a Game Object and a Component. Define what a 'scene' or 'level' is in a game engine. Outline the basic steps for making a character perform an action using code. Compare how Unity and Unreal Engine handle scripting at a high level. Identify the role of physics and collision detection in a game engine. Ever wonder how a game like Fortnite or Among Us knows exactly when you press a button to jump or run? 🎮 Let's peek inside the 'brain' of a game! In this lesson, we'll explore the hidden architecture of powerful game development tools like Unity and Unreal Engine. You'll learn how these engines are structured to bring games...
2

Key Concepts & Vocabulary

TermDefinitionExample Game EngineA special software toolbox that gives developers all the basic tools they need to build a game, like rendering graphics, playing sounds, and handling physics.Unity and Unreal Engine are two of the most popular game engines. Think of them as a giant workshop with every tool you need to build a car, but for games. Game LoopThe main cycle that a game runs over and over again, hundreds of times per second. It checks for player input, updates the game's state, and draws everything on the screen.When you hold down the 'forward' button, the game loop checks for that key press in every cycle, updates your character's position, and redraws them in the new spot. Game Object (or Actor)Any individual 'thing' that exists in your game world...
3

Core Syntax & Patterns

The Update Loop Pattern void Update() { // Code inside here runs every single frame. } This is a special function in a script that the game engine calls automatically on every cycle of the game loop. Use it for things that need to be checked constantly, like player input or character movement. The Component-Based Design Pattern Game Object + Components = Complete Thing Instead of writing one giant program for a character, you build them out of smaller, reusable parts (components). A character is a Game Object that has a model component, a physics component, and a control script component. The Event-Driven Pattern void OnCollisionEnter() { // Code here runs ONLY when a collision happens. } Instead of constantly checking if two things are touching, the engine can tell...

4 more steps in this tutorial

Sign up free to access the complete tutorial with worked examples and practice.

Sign Up Free to Continue

Sample Practice Questions

Challenging
A script applies an upward force to a character in `Update()` every frame the spacebar is held down. The engine's physics also applies gravity. What is the most likely outcome?
A.The character will jump once and fall back down, even if the key is held
B.The character will fly upwards like a rocket as long as the spacebar is held
C.The character will not move because gravity and the upward force cancel each other out
D.The game will crash because you cannot apply force in the `Update()` loop
Challenging
You have created a 'Door' Game Object. You want it to be openable, lockable, and also able to be destroyed. Following the 'Component-Based Design' principle, what is the best way to set this up?
A.Create an 'Openable' component, a 'Lockable' component, and a 'Destructible' component, and add all three to the Door Game Object
B.Create one 'ComplexDoor' script that handles opening, locking, and destroying
C.Create three separate Door Game Objects: one that opens, one that locks, and one that can be destroyed
D.Write the code for all doors directly into the main Scene script
Challenging
In the 'Collecting a Coin' example, the coin's script checks if the object it collided with is the player. Why is this check necessary?
A.To make sure the player's score doesn't go up too fast
B.To make sure the coin doesn't get 'collected' by the ground, a wall, or another coin
C.Because the `OnCollisionEnter()` function requires you to check the object type
D.To prevent the coin from destroying itself before the player touches it

Want to practice and check your answers?

Sign up to access all questions with instant feedback, explanations, and progress tracking.

Start Practicing Free

More from Game Development: Advanced Techniques and Engine Architecture

Ready to find your learning gaps?

Take a free diagnostic test and get a personalized learning plan in minutes.