Most rock fans sooner or later take up the guitar, sports fans passionately dream of entering the football field, basketball court or professional ring.
And those who have spent hundreds of hours playing GTA, spent tens of hours in computer clubs behind Counter-Strike, or made great strides in WoT or DOTA, are probably thinking about starting to make money on their own game development.
The problem is that this direction is taught in a few educational institutions (in our country they can be counted on their fingers). Therefore, most game developers are self-taught.
So where do I start?
The first thing to start with (I don’t take into account the game itself) is mods.
Mod (hidden from “modification”, game modding) – an addition to a computer game, written, as a rule, by third-party developers or amateurs with the help of SDK, attached to the game or special, designed to modify the game amateur programs.
Fashion is usually developed by fans and fans for fans and assume exclusively free distribution. Unlike add-on games, they often change the balance of power (in strategic games) or a set of weapons and capabilities of the hero (in 3D shooters).
Modification will allow you to understand the internal logic of your favorite game, how it is organized and what can be changed in it for the better (and sometimes for the worse) side.
The second thing you need to do is to formulate your goals in the development of computer games. That is, ask yourself a number of questions: to create mobile applications or browser games, professionally engage in game development or devote to this free time?
You also need to understand that you like it more: creating an interface, creating a gameplay or writing scripts? Or maybe you want to be a 3D artist? Setting the right goal will guide you on the right path.
And, of course, you have a number of questions to ask – what you need to know. I will give you examples for writing game scripts, logic, behavior, etc. That is, programming (this is what I do).
Question number one: which language to choose? Honestly, any language (only compiled languages such as C++, C#, Java, Objective C, etc.) will do, the main thing is for a novice developer to understand the principles of programming logic (that is, in the future, the logic of game development).
Is it possible without programming?
Learning programming languages is a very time-consuming and time-consuming process. And enthusiasm can also be silenced. But you already want to develop games now.
Then my answer is: computer game designers!
Game designer – a program for fast assembly of computer games, suitable for people without special training. It combines the game engine and IDE and greatly simplifies the process of creating games, making it available to non-programmers.
The designers open up a huge potential for game creation. Especially for mobile devices, which are in great demand for small games. Popular engines (in my opinion, the most advanced to date) such as Clickteam Fusion, Game Maker Studio and Construct 2 allow you to create games for PC, iOS, Android, HTML 5, Flash, etc.
What is the Unreal Engine?
But what to do for people who seem to be writing code, but there is no time to study all the intricacies of the code. As an answer, I will give you an example of Unreal Engine.
Unreal Engine is one of the most popular game engines available today. Not only that, it is completely free, but also with open source code. However, when you reach a certain amount of money on the game you will have to pay royalties (this, by the way, applies to other engines of AAA class, for example, another no less popular engine Unity).
As some people know, you can write game logic in C++ in the engine. But I’m in a hurry to calm you down: you can also create a game logic with the help of visual programming system – Blueprint is a visual scripting language that allows you to write the logic of the game without the use of programming languages.
No matter how complicated or simple it may seem, it remains a powerful tool that can be used to create almost anything: from a simple character or door opening to procedural level generation.
Unreal Engine itself provides a certain set of tools, thanks to which you can create something of your own, without resorting to third-party software (not including textures). Inside the editor, there is a tool called BSP that allows you to design a scene.
Although it’s designed to be a design tool, not a final design tool, it can be used to make a simple model and even convert it into a physics-based one. You can make a building, some not very complex models, and so on.
Also provided is a landscaping toolkit, which can be used to make a pretty beautiful landscape and enrich it with vegetation and some additional details. Adding a little post-processing, you can get a wonderful picture.
Of course, you should not consider UE4 as a set of buttons called “do all right”. The tool is very powerful with impressive functionality, so you won’t be able to study everything at once either. However, if you manage to set yourself a goal and have enough patience, you will succeed.
In conclusion. What do you need to know to start?
A novice developer needs a lot of patience in mastering mode-building, development on special game constructors without programming, and also needs to study the whole developer’s toolkit. It will be useful in practice in the future. And, of course, to love games!
As for more advanced people, there is a much larger list here. It all depends on what profession you choose. For a programmer – work in high-level languages to the threshold of entry was lower, the basics of modeling, the geometry of things, work in 3D-space and much more – in general, this is what is called the subject area. Love to games and programming – too obligatory attribute.