Lately, a boom has emerged in the development of indie video games, video games made by small studios or groups of people without the millionaire budgets of big companies, but sometimes they get real masterpieces.
Many see this as a business model and want to know how to start programming video games. Others only out of curiosity, fun, or a little bit of everything, in any case, we will see what we need to start in this world of video game programming.
Do you want to program video games?
Sounds like a silly question, but it’s critical. In the development of video games, there are several areas; these are the top five: design, programming, graphics, Audio, distribution, and Marketing. Let us go over them briefly.
- The most important part of a video game. History, script, gameplay, rules, and other concepts that make a game what it is.
- Once a design is developed, it is the part where graphics, audios, and rules come together to give life to an interactive world. There are several disciplines within it, such as visual programming, gameplay, or artificial intelligence.
- Interfaces, 3D models, animations, and all that is “seen” of the video game, there are several disciplines in both 2D and 3D.
- Sound effects, background music, dialogues. Very important to create an atmosphere.
- Distribution and marketing. The art of publishing and promoting a video game, responsible for the success or not of many products depending on the strategies that follow.
As we see, programming is only a part of the process and never a whole; if you still believe that video game programming is your area, we will analyze it thoroughly.
Programming video games, their areas
The Great studies have several dozen programmers, specialized in different areas. In video game programming the leading teams and disciplines you can find are the following.
- Engine programming. They are responsible for implementing the basis on which the video game is based. Communication with the operating system, memory management, management of chains, resource management, etc., needs an excellent knowledge of the platform for the program, algorithms and complexity, optimization and management at a low level.
- Graphic programming. Its mission is to deal with different graphical apis such as DirectX and OpenGL. Knowledge of these apps, and mathematics, especially algebra and geometry.
- Physics programming. Will emulate the physical behaviors of the videogame — knowledge of vector mathematics and dynamic and mechanical physics.
- Artificial intelligence programming. She is in charge of making our intelligent enemies (or our allies). Knowledge of script languages, mathematics, and AI algorithms such as pathfinding, finite state machines, or neural networks.
- Network programming. It takes care of the multiplayer part, servers and anything else to connect one machine to another.
- Gameplay programming. The team that is in charge of programming the logic of the game, its rules. Knowledge of script languages and use of parts developed by other equipment.
These are the main areas in which large studios are divided and may vary in many of them, but these are the main disciplines of video game programming. Okay, I’m clear, which one do I start with? For all and none.
When one starts none of the areas has a high degree of complexity, and the indie programmer must learn to deal with all the regions, specializations are useful to consider for a future, but to begin with you will have to learn a bit of everything.
Now it is, where to start programming video games
Now that the different levels that exist and the degree of complexity that each area can reach are precise Don’t be afraid, let’s start at the beginning.
When you first get into video game development, the first thing you get to do is a clone of your Favorite Ending Fantasy, GTA, or MMORPG, and what has to happen happens: it fails dramatically. All that day we started, we went through that, and it is good to see the level of complexity of these projects and what it means to this work of software engineering.
Once we have overcome this initial trauma and with our feet on the ground comes the first rule: forget about 3D, at least for now. Your first games should be clones of the 2D classics: Pong, Breakout, Pacman and when you feel confident, even a platform game.
Although I’m guessing too many things and one of them is that you already know how to program, so let’s go further back.
Basic knowledge needed to program video games
- Math skills. In principle, there are not many of them, and they will depend basically on the type of play, but basic knowledge of trigonometry and geometry are usually essential.
- Knowledge of physics. As mathematics depends on the type of game, for platform games with basic kinematics knowledge is enough.
- Knowledge of programming. You should know how to program and see a programming language well. The style you choose is the least as long as it is accessible and with an extensive community and library collection.
If you have this knowledge, the following is to search for a library for the development of video games in your language. Here are some of the most popular styles.
Most importantly, make games
Learn the rules of the casino games with our guide. Read how online poker become so popular and find out where to play your favorite game for free.