Unreal Engine 4 for the development of their abilities

Good day, Habr!

In this article, I would like to talk with you about the recently released Unreal Engine 4, which is currently gaining more and more popularity among game developers. And although the article is about UE4, however, it is not at all about a playful one, although it is connected with it.

I would like to draw your attention to the other side of Unreal Engine 4, which will undoubtedly be useful to those who are going to choose their path in life and learn how to develop. It's about the educational abilities of this engine.

I would like to divide the article into two main parts: Programming with logic and Design with creativity. But first, I’ll say a few words about myself, so that you understand why this particular engine and what prompted me to this article.
So let's get started.

About myself

My name is Alexander and I am now 20 years old. All life is still ahead and it's time to decide on your future. About three years ago, I began to get involved in 3-dimensional modeling, and to date, in my opinion, I have achieved good results. Since childhood, I loved to play all kinds of computer games and, like many, I dreamed of doing something like that. Therefore, my specialty is mainly focused on real-time modeling.

However, to create full-fledged games, this was not enough for me, since I did not know programming languages, although the mat. thinking was at a good level. I tried to learn PHP, C ++, Lua, RubyOnRails, JS. But the maximum that was enough for me was Jquery, and he managed to forget a week after the course. All this was pretty disappointing, but I did not give up, while continuing to improve my abilities in 3-dimensional graphics.

Less than a year ago, UE4 came out and I, as a fan of Unreal Tournament and Unreal Engine itself, was very happy. I ran to teach. Here I would like to lead you to the following points, which will tell you what UE4 can give, in addition to the games themselves.

Programming and Logic

As some know, in the engine you can write game logic in C ++, as well as using the visual programming system - Blueprint. For those who don’t know, it looks like this:

Sorting algorithm (by the insert method) at the price of items in the inventory

It is just about this system that I would like to talk to you about. We will call it "Bluprint".

Blueprints are a visual scripting language that allows you to write game logic without using programming languages. No matter how complex or simple it may seem, it remains a pretty powerful tool on which you can create almost anything, from a simple character or opening a door to procedural level generation.

When I saw him for the first time, I was very glad that I could try again to study programming on this system. And really, everything went much better than with text languages. I started with simple things. Variables, simple functions, where to connect and stuff like that. Then (it was in the summer of the 14th year) I still did not think very well how to organize work correctly, how to correctly and optimally build algorithms. But gradually I began to master in this system.

After some time, I began to make simple toys. He began to understand the classes, the communications between individual objects, the world and global classes. It was then that I noticed that I was becoming a real programmer - after compiling the Blueprints and starting with verification, everything worked as it should. There was a lot of happiness.

After some time, I began to delve into more complex things and understand that I can write everything better and more optimally. Thus, I rewrote my inventory system (part of which is in the screenshot) at least three times to get the best performance. Yes, and now I continue to improve, as the system is freely available. At the moment, I understood Blueprints very well and can do almost anything (within reasonable limits, of course).

As a result, this system taught me not only how to work with it, but also very well made it clear that you need to build logic competently, optimally and thoughtfully, and how to do it. Also very well developed logic in the field of construction of algorithms.

Thus, novice igrodelov, programmers, or just people who are interested in doing something of their own, can easily learn not only how to work with Blueprints, but also learn a lot of new things, not to mention the development of logic.

Let's take a look at another example - Materials:

Here the work happens in the same way, but there are no logical sequences, only mathematics.

Using mathematical operators and textures, you build material that will subsequently be superimposed on any object in your scene. From the very beginning it may not be clear, and why all this is necessary at all, however, oddly enough, this system is very useful for creating the necessary or even generated materials.

Let's take a simple example: a material can have color and smoothness; You have a texture that depicts the various did of your subject, and it is all beautiful and pleasing to the eye. But just applying a texture to the model, you realize that something is missing here. Right! This part should be smooth and reflect the world around, but this part should be made opaque without any reflections. Here you can use math to generate a black and white map from your texture, where white means the matte part and black means the smooth part.

Having studied the materials and the principle of their work, one can achieve good success in algebra. And not only in it, but again in the logic itself, since all the formulas need to be invented by yourself.

Here is an example of a material that generates color, metal made, smoothness in the right places and even relief. All this from one texture:

Of course, the texture is not ordinary, but special, but the bottom line is that after studying the system and a little experience, you will learn how to build the most incredible things.

To summarize some of the logic and programming, I would like to say that even with these two tools, anyone can develop logical thinking in themselves and sooner or later learn how to build such systems, the work of which he had no idea. Well, even writing his own game will not be difficult for him, and with this experience you can safely go to learn more powerful programming languages, or at least have an idea about the future in such a field.

Design and creativity

Have you ever wanted to build your house, walk in it? Make your own movie? Or just create a beautiful or gloomy scene to throw out the accumulated emotions? If so, then Unreal Engine 4 can help you too.

Here are some impressive videos that demonstrate graphic capabilities:

And also in the field of architecture visualization:

Of course, there were some beautiful 3D models, animations and all that. However, I wanted to notice a feature of the graphics that this engine can produce in real time.

Unreal Engine 4 itself provides a certain set, thanks to which you can create something of your own without resorting to third-party software (not counting textures). I don’t want to go into details that you yourself can study if you are interested, but it's worth mentioning.

Inside the editor there is a tool called BSP, thanks to which you can design a scene. Although the tool is intended for design, and not for the final result, but with it you can make a simple model and even convert it so that it can be subjected to physics. You can make a house, a fence and the like. Anything with enough patience, as the tool is not the most convenient to use yet.

It also provides tools for creating landscapes, with the help of which it is possible to make a pretty beautiful landscape and populate it with the very same models, as well as vegetation and some additional details. By adding a little post processing, which, incidentally, is not so difficult to work with, you can get a wonderful picture of the natural scene. It already depends on your imagination.

For those familiar with 3D modeling, there will be even more options in UE4. Simplicity in importing (through the FBX format), ease of installation, overlay of materials, and their creation is also not so difficult, if you look, working with light, baking and much more.

I myself also create 3D models and noticed for myself that all the time I want to check how the model will look inside the engine. And, I admit, the quality is not inferior to modern renders.

The_Distiller user’s work from the official forum

Of course, it’s worth considering that the rendering takes place in real time, and not everything is always as realistic as it could be, but the plus here is that you can freely move the camera for viewing from any angle.

Of course, here you can come up with many more advantages. For example, visualization of architecture in real time using the example of video, which was higher. Removing beautiful 3D clips without hours of rendering. There is even support for VR glasses, so you can make a virtual tour. And imagine if this tour will be in that realistic apartment? In short, for creative people there is also a place.

To summarize

Despite the fact that Unreal Engine 4 is an engine for creating computer games, it can be used for a variety of purposes. In this article I wanted to expose him from the side of education and as a personal assistant in the development of my mental abilities. I do not want to judge my text, but I tried to paint it as clearly as possible for people of any age and profession and, I hope, in the future the engine will help a lot of people, including the younger generation.

Of course, you should not consider UE4 as a set of "do everything well" buttons. The tool is very powerful with impressive functionality, so learning everything at once will also fail. However, if you manage to put yourself an incentive and have enough patience, then you will succeed!

I myself have been studying UE4 for no more than 7 months and excelled in many areas within the editor, even opened my own community. However, much more has not been studied, so in the future there may be additional articles from me. If you like this article, of course.

Also popular now: