Evgenii Legotckoi
Evgenii Legotckoi5 июля 2019 г. 11:05

Дневник разработки EVILEG - TD Strategy - 001

Наконец-то дошли руки сделать то, что я очень давно хотел попробовать. А именно разработка на Unreal Engine 4. Постараюсь закинуть сайт и по вечерам освещать доработку самого сайта. Но все же попробую свои силы в GameDev.

Сошлись сразу несколько условий:

  • Профессиональный уровень в программировании уже позволяет быстро разбираться даже в незнакомых библиотеках.
  • Имеется достаточное техническое оснащение и возможность купить некоторые устройства.
  • Появилось свободное время и желание.

Ну а теперь ближе к идее игры. Лично я предпочитаю ролевые игры. Но мне кажется, что такую ​​игру довольно сложно реализовать, по крайней мере, на мой взгляд. Поэтому первым проектом будет игра в стиле Tower Defense, вопрос только в том, что задуманная игра не станет классической RTS. Хотя может это даже и к лучшему?


Первые шаги

Развитие и развитие проекта будет на данный момент хаотичным, без какого-либо далеко идущего плана. То есть это будет общее увлечение, как сайт изначально был для меня, но все равно остается.

Поэтому документацию на будущую идею писать не буду, хотя диздок обычно пишут все взрослые Game Studios. А я буду решать второстепенные задачи, которые на мой взгляд нужно решить в данный момент, и расскажу о результатах. Также я думаю, что результатом такого исследования станут статьи Unreal Enigne 4 .

Итак, результатом четырех вечеров изучения UE4 и Blender (кто не знает, это программа для 3D моделирования, являющаяся бесплатным аналогом 3DMax) стало:

  • Два прототипа зданий:
    • Главное здание должно быть защищено
    • Боевая башня, которая будет уничтожать противников
  • Камера RTS, отвечающая за перемещение по карте. Он реализует следующее:
    • Движение камеры влево, вправо, вперед, назад по клавишам W, A, S, D
    • Увеличить
    • Вращение с помощью мыши
  • Полоса здоровья над зданиями и ее скрытие клавишей Alt
  • Сетка

Я думаю, что камера доступна в отдельной статье, как и полоса здоровья.

Что касается выбранной технологии, то я пока сосредоточился на использовании BluePrints в UE4, а если потребуется оптимизация, то буду писать классы на C++. Ну или если я очень устал от многословия BluePrints. На самом деле, действительно, некоторые вещи на C++ можно написать одной четкой строкой, которая описывает все с помощью блок-схемы.

Также, как я заметил, BluePrints легко использует наследование, что хорошо, ведь тот же HealthBar можно добавить в базовый класс, тогда как в других классах можно настроить только его расположение над объектами, либо под объектами. Это на ваш вкус.

Работа сделана

Главное здание

Одной из задач на каждом уровне будет то, что необходимо будет защитить главное здание, чтобы полчища не смогли быть уничтожены противником. В противном случае игра закончится. Это здание является прототипом, и окончательная версия будет меняться. Более того, это была моя первая полноценная попытка сделать 3D-модель в Blender, а также нарисовать для нее текстуру.

Оборонительная башня

А тут было немного легче. Я смоделировал башню быстрее, а текстуры проработали более детально. Однако для прототипа подошли бы довольно простые текстуры. Но я хотел попробовать графический планшет Wacom.

Полоса здоровья

Специально для него ничего не рисовал, хотя возможно, что стоило бы. Но это будет отработано гораздо позже, когда появится модель противника и боевая логика.

Сетка

Сетка, которую вы уже видели на изображениях выше, — это синий квадрат под курсором.

Вывод

Давно не было покоя. Иногда требуется смена деятельности. И кажется я нашла способ отвлечься даже от разработки сайта, хотя сам сайт для меня способ отвлечься от основной работы.

Получается забавная ситуация.

  • Основная работа - разработка САПР - с использованием Qt/C++
  • Сайт - хобби-проект - использование Django/Python - отдых от работы
  • GameDev - хобби-проект - с использованием UE4/Blueprints/C++/Blender - остальное от всех других проектов.

Спрашиваю, попадаю ли я в самую гущу событий? В общем, время покажет?

Также, Друзья, это первая статья в разделе дневники разработчиков , а так же вы можете рассказать о своих проектах на страницах EVILEG. И я надеюсь, что вы найдете здесь свою аудиторию, которая поддержит ваши начинания!

Спасибо за внимание к проекту EVILEG!!!

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Вам это нравится? Поделитесь в социальных сетях!

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
B

C++ - Тест 002. Константы

  • Результат:16баллов,
  • Очки рейтинга-10
B

C++ - Тест 001. Первая программа и типы данных

  • Результат:46баллов,
  • Очки рейтинга-6
FL

C++ - Тест 006. Перечисления

  • Результат:80баллов,
  • Очки рейтинга4
Последние комментарии
k
kmssr9 февраля 2024 г. 5:43
Qt Linux - Урок 001. Автозапуск Qt приложения под Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Анатолий Кононенко5 февраля 2024 г. 12:50
Qt WinAPI - Урок 007. Работаем с ICMP Ping в Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
EVA
EVA25 декабря 2023 г. 21:30
Boost - статическая линковка в CMake проекте под Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
J
JonnyJo25 декабря 2023 г. 19:38
Boost - статическая линковка в CMake проекте под Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
G
Gvozdik19 декабря 2023 г. 8:01
Qt/C++ - Урок 056. Подключение библиотеки Boost в Qt для компиляторов MinGW и MSVC Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Сейчас обсуждают на форуме
P
Pisych27 февраля 2023 г. 15:04
Как получить в массив значения из связанной модели? Спасибо, разобрался:))
AC
Alexandru Codreanu19 января 2024 г. 22:57
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…
BlinCT
BlinCT27 декабря 2023 г. 19:57
Растягивать Image на парент по высоте Ну и само собою дял включения scrollbar надо чтобы был Flickable. Так что выходит как то так Flickable{ id: root anchors.fill: parent clip: true property url linkFile p…
Дмитрий
Дмитрий10 января 2024 г. 15:18
Qt Creator загружает всю оперативную память Проблема решена. Удалось разобраться с помощью утилиты strace. Запустил ее: strace ./qtcreator Начал выводиться весь лог работы креатора. В один момент он начал считывать фай…
Evgenii Legotckoi
Evgenii Legotckoi12 декабря 2023 г. 17:48
Побуквенное сравнение двух строк Добрый день. Там случайно не высылается этот сигнал textChanged ещё и при форматировани текста? Если решиать в лоб, то можно просто отключать сигнал/слотовое соединение внутри слота и …

Следите за нами в социальных сетях