A modern day video game is a sophisticated piece of software with massive amount of data. The seemingly simple interface and game rules is a façade of its actual complexity in terms of software substance. This is even truer of the process for its creation. To develop modern electronic games one has to be prepared mentally. One’s mind must be equipped with the right attitude, knowledge, and skills. In this series of blog entries, I will attempt to touch on the knowledge required to make games.
Video games are made of code (programming) and contents (art, music, etc). Both require different sets of skills.
Code
The code components of a game collectively make the game engine. The game engine comprises of many components or sub-systems, each having distinct functionalities. To implement each of these subsystems require knowledge from different field of studies. I will try to go into as much details as possible in this section.
Note: Some game engines are designed to be reused. Usually these reusable game engines have their game-specific and non-specific components isolated.
Starting with the next post i will attempt to divide the game engine subsystems and discuss knowledge related to each one.