Найти тему

Делаем игру про поезда. Часть 4. Железнодорожные пути

Оглавление

Всем привет! База графики у нас уже готова и наша игра начинает приобретать более-менее приятный вид. Но пока только на скриншотах, в статике. Теперь нам нужно заставить ее работать. Начнем с основных механик, а именно со строительства, движения и остановок поездов. По первоначальной задумке игры строить можно только рельсы (прямые, поворотные, перекрёстки и стрелки), места остановок локомотивов (станции) и семафоры. Конкретно в этой статье мы займемся механикой строительства того, без чего поезда не будут двигаться - железной дорогой.

<Рисуем интерфейс>

Интерфейс строительства будет висеть на экране в виде отдельных кнопок с разными элементами, как в градостроительных стратегиях. Я решил начать с примерной графики интерфейса. Открываем Photoshop и прикидываем в черновом виде несколько картинок-кнопок для всех основных элементов наперед.

Пиктограммы интерфейса строительства
Пиктограммы интерфейса строительства

Теперь создаем вспомогательный курсор-"призрак" строительства, который будет появляться когда мы выбираем объект строительства. Он будет следовать за курсором и привязываться к квадратной сетке карты.

"Призрак" строительства, который привязывается к сетке карты и показывает место где будет стоять размещаемый объект
"Призрак" строительства, который привязывается к сетке карты и показывает место где будет стоять размещаемый объект

<Рельсы-рельсы, шпалы-шпалы>

Конечно это пока просто кубик, потом заменим его на полупрозрачную модель объекта строительства. Поэтому давайте не будем затягивать и приступим к этим самым объектам. Начнем с прямого и поворотного блоков железнодорожного пути. Я решил пока не усложнять и сделать их простыми текстурами с маской (то есть с полупрозрачными элементами чтобы он не казался плоским), возможно потом заменю их на полноценные 3d модели. Опять открываем Photoshop и рисуем рельсы-рельсы шпалы-шпалы... Делаем сразу для них черно-белые маски и переносим в игровой движок.

Картинки блоков железнодорожного пути - прямой и поворотный
Картинки блоков железнодорожного пути - прямой и поворотный

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

<Механика строительства>

При нажатии на кнопку возведения объекта появляется "призрак" строительства, для которого назначается тот или иной ID. В зависимости от него выбирается соответствующая модель для его отображения, а при нажатии левой кнопки мыши строится выбранный в интерфейсе объект на месте где находится "призрак" (и удаляется ранее построенный объект). Также реализуем сразу и поворот объектов на 90 градусов по часовой стрелке с помощью буквы R на клавиатуре, причем сделаем это как для уже построенных объектов при наведении на них мыши, так и для самого "призрака". строительства. Разумеется, всё это реализуем с помощью системы визуального программирования Blueprint, которая есть у Unreal Engine 4.

Строительство путей реализовано!
Строительство путей реализовано!
Вот так вот выглядит полная картина вместе с интерфейсом строительства. Место кнопок на экране и их внешний вид будем еще искать, сейчас они как-то выбиваются, возможно их стоит разместить по центру снизу...
Вот так вот выглядит полная картина вместе с интерфейсом строительства. Место кнопок на экране и их внешний вид будем еще искать, сейчас они как-то выбиваются, возможно их стоит разместить по центру снизу...

Всё работает) Теперь объекты строятся и поворачиваются! Семафоры и остановки, а также движение поездов по железной дороге обязательно добавим в следующих статьях. Подписывайтесь чтобы не пропустить!

Ссылки на прошлые статьи:

Часть 1. Идея игры пришла в плацкарте
Часть 2. Генерация карты
Часть 3. 3D модель паровоза и вагона