Game Development Basics
A broad overview of the game development world, and how it compares to standard software engineering. By game developer and director Tommy Thompson.
Q: “I play video games, and I was wondering how building games compares to more ‘standard’ software development. I’d love to get a glimpse into the game development world, and how it compares to the software engineering approaches at tech companies.”
How games are built is a fascinating subject for me, and my interest derives from having worked with former game developers. At Skype, I worked on the team building Skype for the Xbox One console, and several engineers on that team had previously worked in games. It was by talking with them that I realized just how different the game development world is. Video games are very complex pieces of software, built in different conditions and under very different constraints than many other business applications are.
To answer the question of how the video game development sector works, I turned to Tommy Thompson, director of AI and Games, who’s a veteran of game development and of teaching it. Tommy has built his own video games, consulted on a wide variety of game projects, and for a decade has taught game development at various universities. He also runs the highly popular AI and Games YouTube channel, where he delves into how AI makes for better games, and games make for better AI.
I met Tommy in 2010 at Scott Logic, a UK software consultancy where we were both software developers on neighbouring desks. As we reconnected more than a decade later, I discovered just how much our paths diverged right after that job; Tommy spent the next ten years in gaming, while I moved on to tech companies.
There’s a lot to cover on game development, and this article is intended to be a broad overview of the field. In this issue, we tackle:
Games are software, but in a non-standard way. The differences between games development and more “standard” software engineering, roles, and how games are typically built.
The game development cycle. What happens in the pre-production, production and release steps?
Indie vs AAA production. What are the major differences between how indie games are built vs how AAA titles come together?
Game development tools & services. Some of the custom tools used in game development: source control approaches, game engines and middlewares.
With that, it’s over to Tommy: