Evgenij LegotskojJuly 5, 2019, 11:05 a.m.

Development Diary of EVILEG - TD Strategy - 001


Finally got around to do what I wanted to try for a very long time. Namely, the development on the Unreal Engine 4. I will try to throw the site and highlight the evenings to finalize the site itself. But nevertheless I will try my hand at GameDev.

Several conditions came together at once:

  • The professional level in programming already allows you to quickly understand even unfamiliar libraries.
  • There is sufficient technical equipment and the ability to buy some devices.
  • Appeared free time and desire.

Well, now closer to the idea of the game. Personally, I prefer RPG games. But it seems to me that such a game is quite difficult to implement, at least in my view. Therefore, the first project will be a game in the style of Tower Defense, the only question is that the conceived game does not become a classic RTS. Although it may even be for the better?

First steps

Development and development of the project will be at the moment chaotic, without any far-reaching plan. That is, it will be a common hobby, as the site was originally for me, but it still remains.

Therefore, I will not write documentation for the future idea, although all adult Game Studios usually write dizdok. And I will solve minor tasks that in my opinion need to be solved at the moment, and I will talk about the results. I also think that the result of such research will be articles by Unreal Enigne 4 .

So, the result of four evenings of studying UE4 and Blender (Who does not know, this is a 3D modeling program that is a free analogue of 3DMax) has become:

  • Two prototype buildings:
    • Main building to be protected
    • Battle Tower, which will destroy opponents
  • RTS camera, which is responsible for moving around the map. It implements the following:
    • Camera movement left, right, forward, backward along the keys W, A, S, D
    • Zoom
    • Rotate with the mouse
  • Health bar over buildings and hiding it with the Alt key
  • Grid

I think that the camera is available in a separate article, as well as the Health Bar.

As for the chosen technology, I have so far focused on using BluePrints in UE4, and if optimization is needed, I will be writing classes in C ++. Well, or if I am very tired of the verbosity of BluePrints. In fact, indeed, some things in C ++ can be written in one clear line, which describes everything with the help of a block diagram.

Also, as I noted, BluePrints easily uses inheritance, which is good, because the same HealthBar can be added to the base class, while in other classes you can only adjust its location above objects, or under objects. This is for your taste.

Work done

Main building

One of the tasks at each level will be that it will be necessary to protect the main building so that the hordes cannot be destroyed by the enemy. Otherwise, the game will end. This building is a prototype and the final version will change. Moreover, it was my first full attempt to make a 3D model in Blender, as well as draw a texture for it.

Defensive tower

And here it was a little easier. I modeled the tower faster, and the texture worked in more detail. However, quite simple textures would be suitable for the prototype. But I wanted to try out the Wacom graphics tablet.

Health Bar

For him, I did not paint anything specially, although it is possible that it would be worth it. But this will be worked out much later, when the enemy’s model and combat logic will appear.


The grid you have already seen on the images above is the blue square under the cursor.


It has long been no rest. Sometimes a change of activity is required. And it seems I have found a way to distract even from the development of the site, although the site itself is a way for me to escape from the main work.

It turns out a funny situation.

  • The main work - development of a CAD system - using Qt/C ++
  • Site - hobby project - use Django/Python - rest from work
  • GameDev - a hobby project - using UE4/Blueprints/C++/Blender - rest from all other projects.

ВI ask, do I get into the thick of it? In general, time will tell?

Also, Friends, this is the first article in the development diaries section, and you can also talk about your projects on the EVILEG pages. And I hope that you will find your audience here that will support your initiatives!

Thank you for your attention to the project EVILEG !!!

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate


Only authorized users can post comments.
Please, Log in or Sign up

Let me recommend you the excellent hosting on which EVILEG is located.

For many years, Timeweb has been proving his stability.

For projects on Django I recommend VDS hosting

View Hosting

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:10points,
  • Rating points-10
  • knobu
  • Sept. 23, 2020, 2:34 a.m.

C++ - Test 006. Enumerations

  • Result:60points,
  • Rating points-1
  • knobu
  • Sept. 23, 2020, 2:21 a.m.

C++ - Test 005. Structures and Classes

  • Result:91points,
  • Rating points8
Last comments

Qt/C++ - Lesson 015. QTableWidget – How to create a table with checkboxes?

Кто-нибудь знает, как сделать так, чтобы в QTableWidget состоящей из чекбоксов в строке таблицы можно было выбрать только один checkbox ?

Qt/C++ - Lesson 006. QSqlQueryModel – Tables in Qt with SQL-query

QSqlTableModel выполняет ряд стандартных операций для одной таблицы из базы данных. Поэтому там и реализован функционал по удалению и редактированию. QSqlQueryModel позволяет выполнить запр…

Qt/C++ - Lesson 006. QSqlQueryModel – Tables in Qt with SQL-query

Добрый день. Хотел спросить вот что. Создал проект на основе QAbstractTableModel. В MainWindow cоответственно создал модель и связал с представлением. Поиск веду по списку элементов модели,…

QCheckBox в качестве делегата QTableView

До тех пор, пока у вас проект содержит только одну таблицу, или несколько то может быть. Когда их будет 1000 и чекбоксы в разных колонках, то без делегатов и переопределения возвращаемых ре…
  • Damir
  • Sept. 20, 2020, 3:34 p.m.

QCheckBox в качестве делегата QTableView

bool Node::setData(const QModelIndex& index, const QVariant& value, int role){ switch (index.column()) { case 0: switch (role) { case Qt::CheckStateRole:// <- т…
Now discuss on the forum

Как в QTableWidget, состоящей из чекбоксов, в строке таблицы можно было выбрать только один checkbox ?

Сделал таблицу состоящую из чекбоксов по уроку https://evileg.com/ru/post/78/ Кто-нибудь знает, как сделать так, чтобы в QTableWidget состоящей из чекбоксов в строке таблицы можно …

как скрыть елемент с копии виджета

Удалить пост нельзя... Поэтому удачки, Катту)

Тесты падают при сборке под MinGW.

Всем привет! При сборке под MinGW некоторые тесты при старте выдают FATAL "не удалось запустить тест проекта" и подвешивают Qt Creator - приходится его перезапускать. При сборке под MSVC та…

Как в qml работать с динамически созданными потомками?

Спасибо) В Qt/С++ есть функция deleteLater, которую обычно используют, чтобы удалить объекты, которые наследованы от QObject . Она добавлена для того, чтобы не удалять такие…

Как в Qt в qmenu добавить scrollarea

Вот это наследованный класс меню. Но посути это обычное меню. #pragma once#include <QtWidgets>class TransMenu : public QMenu { Q_OBJECTpublic: TransMenu(QWidget* parent = …
© EVILEG 2015-2020
Recommend hosting TIMEWEB