Outschool
Open currency, time zone, and language settings
Log In

Part 4: Roborace Game Development With Matlab

In this course students will learn to build a racing game in MATLAB. They will design race tracks, program robot movements, and add exciting features like obstacles and power-ups, combining programming skills with creative game design.
Class

What's included

5 live meetings
5 in-class hours
Homework
1-2 hours per week. 1-2 throughout the class
Assessment
1-2 throughout the class

Class Experience

Beginner - Intermediate Level
What Will Be Taught?

This course teaches students how to create a robot racing game using MATLAB. Students will learn essential programming concepts, including controlling movements, designing race tracks, and integrating game features such as obstacles and power-ups.

What Topics Will I Cover?

Introduction to MATLAB and Robotic Concepts: Basic understanding of MATLAB and robotics, setting up the game environment.
Designing the Race Track: Using MATLAB to create a race track layout and understanding graphical plotting.
Programming Robot Movements: Coding robot controls, movement logic, and collision detection.
Adding Obstacles and Power-Ups: Enhancing the game with features like barriers and speed boosts.
Race Day and Tuning: Final adjustments, playtesting, and showcasing the completed game.

How Is My Class Structured?

Lecture and Demonstration (10-15 minutes): Each lesson begins with an introduction to key concepts, accompanied by live demonstrations in MATLAB.
Interactive Coding (15-20 minutes): Students will code along with me, implementing game features step-by-step.
Game Development (15-20 minutes): Students apply the concepts learned by developing their own robot racing game.
Q&A and Playtesting (5-10minutes): Sessions will conclude with opportunities for students to test their games, ask questions, and discuss improvements.

How Will I Teach?

I will use a hands-on teaching approach, where students actively participate in coding exercises and apply what they’ve learned to build their game. Lessons are designed to be interactive and engaging, with live coding demonstrations and real-time problem-solving.

What's My Teaching Style?

My teaching style is interactive and student-centered, focusing on making coding accessible and fun. I encourage creativity and exploration, allowing students to experiment with their designs while providing guidance and support.

How Much Will Learners Get to Interact With me?

Live Coding: Students will follow along with coding exercises, receiving immediate feedback and support.
Game Development: I will provide individualized guidance as students develop their racing games, helping them troubleshoot and refine their work.
Playtesting and Feedback: Students will test their games, share their results, and receive constructive feedback to improve their projects.
Learning Goals
Students will be able to build a robot racing game in MATLAB, including designing the race track, programming robot movements, adding obstacles and power-ups, and fine-tuning their game for an exciting final race.
learning goal

Syllabus

5 Lessons
over 5 Weeks
Lesson 1:
Introduction to MATLAB and Basic Graphics
 In this introductory lesson, students will become acquainted with the MATLAB environment, focusing on the interface and essential commands. The lesson covers basic plotting functions such as plot, rectangle, and line, enabling students to create simple figures and draw basic shapes. By the end of this lesson, students will have a foundational understanding of how to visualize data in MATLAB. For homework, they will modify shapes or colors in a provided script, reinforcing their grasp of basic gr 
60 mins online live lesson
Lesson 2:
Axis Manipulation and Looping
 This lesson teaches students how to manipulate plot dimensions using the axis command and introduces the concept of looping through for and while loops. Students will learn to adjust plot limits and create simple animations, such as moving a rectangle across the screen, to understand how loops can be used to create dynamic content. The homework involves creating a basic moving object using loops, allowing students to apply their knowledge of axis manipulation and looping. 
60 mins online live lesson
Lesson 3:
Interactivity and Conditional Statements
 In this lesson, students will add interactivity to their MATLAB programs by introducing conditional statements and user input functions like waitforbuttonpress or input. They will learn to implement if statements to control the flow of their animations and stop them based on specific conditions. Homework will focus on experimenting with different conditions to control the stopping behavior of objects, enhancing their interactive capabilities. 
60 mins online live lesson
Lesson 4:
Building the Game Environment
 This lesson focuses on constructing the game environment, including the racing track, lanes, and finish line. Students will use plotting functions and text annotations to draw and position elements on the track, such as robots and obstacles. They will also introduce randomness in robot movement to simulate a racing scenario. For homework, students will customize the track or robot appearance, applying creative touches to their game environment. 
60 mins online live lesson

Other Details

Parental Guidance
Students will need to download the Octave (an open-source alternative to MATLAB) in order for them to be able access the lessons and practise the MATLAB coding that is done in each lesson. Please use the link below to download and install Octave free of charge. https://octave.org/
External Resources
Learners will not need to use any apps or websites beyond the standard Outschool tools.
Sources
https://octave.org/
Joined February, 2024
Profile
Teacher expertise and credentials
Non-US Teaching Certificate in Mathematics
Bachelor's Degree in Science from University of West Indies
Bachelor's degree in Physics
I completed a Master's degree in Physics and Engineering in Medicine which focused on the use of Matlab in engineering.

Reviews

Live Group Course
Share

$20

weekly or $100 for 5 classes
1x per week, 5 weeks
60 min

Live video meetings
Ages: 13-17
4-10 learners per class

About
Support
SafetyPrivacyCA PrivacyLearner PrivacyManage Data PreferencesTerms
Financial Assistance
Get The App
Download on the App StoreGet it on Google Play
© 2024 Outschool