Computer Programming: It's Not All Fun and Games!

atari coding computer programming computer science coordinate plane cosine cross-curricular connections game game development geometry graphical hypotenuse interdisciplinary instruction learning mathematics physics programming project-based learning python right triangle scratch sine software development stem stem education thinking trigonometry unity unreal engine use case video games Apr 22, 2024
Person holding video game controller with math formulas around the edge of the screen

What can creating a video game teach students about math? Quite a lot, actually. Today's video games have become so realistic that, at a glance, one may think they are live action television. Development environments like Unity, the Unreal Engine, and GameMaker Studio handle much of the heavy lifting when it comes to the mathematical calculations necessary to move the in-game objects, to do the intense graphical rendering (also based on math), and to apply physical laws like gravity and inertia.  Even programming libraries like PyGame for Python provide support for much of the low-level work that generally makes games more challenging and complex to code than other business applications.

However, with a simpler environment like Scratch, students must do this work for themselves.  Even relatively simple games like Bricks Buster (our version of Atari's arcade classic Breakout) reinforce concepts identified in the Common Core State Standards Initiative like inequalities, fractions and decimals, geometric transformations, and the x-y coordinate plane.

Bricks Buster also uses recursion to draw the rows of bricks, thus allowing it to connect with a lesson on the Fibonacci sequence, for example.  Speaking of the Fibonacci sequence, we've used it in TRex Run, our version of the Google Dinosaur game.  Our version is written in Python using the PyGame library, and the Fibonacci sequence provides a list of values to control the dinosaur's jump when leaping the obstacles.  We found the Fibonnaci sequence provided a better model for this use case than a parabolic function. 

Other projects in our Learn Programming by Creating Video Games unit require students to use even more complex concepts like working with vectors and applying trigonometric relationships in order to update a sprite’s position in each iteration of the game loop.  For example, in Into the Kuiper Belt (our version of Asteroids), students use applied trig to determine how far the rocket ship should move on the x- and y-axes.  Additionally, because of the way Scratch does rotation around the unit circle, students must also apply concepts related to supplementary angles to convertthe ship's direction according to Scratch to one that is suitable for the trig ratios needed in this calculation.

So, while it may look like students are simply playing games, they are actually learning and applying important mathematical concepts. In addition, they get to see these concepts without the artificial separation often imposed by traditional curricula.

If this looks like a fun way to learn math, we can help! We have programs for schools and for individuals spanning a wide range of subject areas including game development. Send us a note to let us know you are interested!

Stay connected with news and updates!

Join our mailing list to receive the latest news and updates from our team.
Don't worry, your information will not be shared.

We hate SPAM. We will never sell your information, for any reason.

To learn more about how we can help you integrate STEM education at your campus or homeschool, contact us for a consultation. 

Schedule a Consultation