The game industry is a huge market today. According to the survey of Newzoo, the total volume of the global game market has reached 95,2 billion dollars in 2016.
Lots of rock-music fans begin to play guitars or drums and create their own bands sooner or later. Sport fans are strongly passionate about stepping to a football pitch or a basketball court. And those, who made hundreds of auto thefts for joyriding in GTA; those, who spent decades of hours in computer clubs playing Counter Strike; or those, who got good results in MMORPG games, – they are probably thinking about game programming. But the problem is that only the very small amount of high schools teaches this field. So game developers are self-made.
So, how to create a game? Firstly, there are three main groups of games: computer games, video games and mobile apps. Actually, there is no big difference between video games and computer games. But video games refer to games played on consoles (Xbox, PlayStation) handheld devices and smartphones. And computer games refer to games played on PC.
Secondly, you should ask yourself some questions:
– Do I want to create my own game or an app?
– Do I want to work in a big or a small company?
– Do I want to do it professionally or do it in my free time?
– And what is interesting for me: creating an interface, gameplay or writing scripts?
If you set your goals in the right order, it will help you to economize your time and energy.
Let`s see how to create a video game. There are three main parts of game development process:
Game designing consists of several steps. Before you start, you need to choose a genre of the future game: action, RPG, strategy, quest, etc. The next step is called “setting”. Setting means the plot. The most popular settings are: fantasy, sci-fi, Middle Ages, steampunk, anime, comics.
Creative work refers to game development tools. There are a lot of programming languages. The most popular languages are Python, JavaScript, C++ and C#. Online games are written mainly in PHP, Python, Ruby, Java, C#, Erlang.
If you create a flash game, you may use ActionScript.
One of the key benefits in the game development process is the importance of constant self-improvement. If you want to become a game developer, learning new programming languages is a necessity. For example, experienced developers often have to write in 7-8 languages at the same time. So if you decided to connect your future with game programming, be ready to become a polyglot. The more languages you learn the more interesting and diverse challenges you will face. And, surely, you will increase your chances to get a job of your dream.
As for game development software or game engines, these tools are made to simplify and speed up the game development process. Making your own game is not a difficult thing if you don`t begin from scratch, but use game development software created by more experienced people. Why code standard game elements if someone has already created it? So you can skip this part and move on to creativity. There are many engines, which are free to use:
And this is not a full list of game development software.
Concerning creative part of the game – you should just think of the characters, dialogues, landscapes, sounds, music, special effects. And again game development software will provide all tools for designing your game.
As for creating apps for iOS, Windows and Android, you can choose a mobile app company you want and create your own app. There are both free and PRO web-services. Here are two examples:
Of course, describing all the small details of how to make a video game and a mobile app will be impossible in a several-paged article. But we told you that you should clearly see your goal during all game development process. Programming languages are necessary to learn, but you can learn them by yourself via the Internet. Visit Coursera website or watch YouTube videos on coding. You can also find IT bloggers and ask them questions about Python, Java, C++ and so on. Moreover, you can spend time and find a number of professional game development outsourcing companies. Opportunities surround us – just start!
Anastasia Lobanova
Евгений Дятлов says:
Hey, nice article. But there is a lot of mistakes. For example: setting is not a plot. Setting is a graphical atmosphere, timeline, narrative. Yes, you classified it right: sci-fi, fantasy, etc. But plot is not a setting(it could be a part of setting, but not a full part).
Secondary: programming languages. Newbee in game making wouldn’t choose the programming language, he would choose game engine(or constructor) for making his first game. Also, you should add in your article that:
– Java is too difficult for computer, he have a low performance(look to a Minecraft, it can be laggy on a strong machines).
– C++ has perfect performance, he is #1 in game programming(look to a Unreal engine, it use this language).
– Python uses only for back-end game programming(data statystics), but coders use C++ libraries in Python interpretaror.
– Erlang? It’s useless in game dev.
Also, you could write more about game engines and constructors(Unity, Game Maker, Construct 2, Cocos, etc.) How i said, it would be better for juniors in GD.