Unreal Engine 4 Blueprints Tutorial

В этом уроке, посвященном Unreal Engine 4 вы узнаете, как использовать Blueprints для создания игрового персонажа игрока и настройки его взаимодействий с различными объектами.

Blueprints – это своего рода система визуальных событий в Unreal Engine 4, которая позволяет быстро создать прототип вашей игры. Вместо того, чтобы писать подробный код, вам достаточно сделать визуальную поведенческую модель: создать и разместить узлы, а также соединить их в зависимости от последовательности событий и установить каждому определенные свойства.

Помимо того, что Blueprints является довольно быстрым и простым инструментом для создания прототипов, он также позволяет людям без навыков программирования самостоятельно создавать собственные игры и сценарии.

В этом уроке вы научитесь использовать Blueprints для:

  • Установки вида камеры в пространстве;
  • Создания игрового персонажа с набором базовых движений;
  • Создания функций и свойств для игрового персонажа;
  • Создания объекта, который будет исчезать при взаимодействии с ним игровым персонажем.

Примечание: В этом руководстве предполагается, что вы уже знаете, как ориентироваться в интерфейсе Unreal Engine 4. Из предыдущего урока вы должны были узнать основные понятия Blueprint, такие как компоненты и узлы. При необходимости вы можете посмотреть материал предыдущего занятия еще раз, чтобы освежить ваши знания. Также, если вам нужна переподготовка, то мы рекомендуем ознакомьтесь с нашим руководством для начинающих по Unreal Engine 4.

Это учебное руководство также основано на использовании векторов. Если Вы не знакомы с векторами, я рекомендую эту статью с gamedev.net

Это занятие является частью серии, которая состоит из 10 уроков, посвященных Unreal Engine:

Начало работы

В первую очередь вам необходимо скачать и разархивировать стартовый проект.

Для того, чтобы открыть его, вам нужно перейти в корневую папку, где находится скаченный файл BananaCollector.uproject и открыть его.

Примечание: Не пугайтесь, если вы увидите системное сообщение о том, что проект был создан с использованием более ранней версии программы Unreal, это нормально (для редактора часто выходят обновления).

Вы можете выбрать один из вариантов: «открыть копию», или «преобразовать» файл.

Посмотрите, так должна выглядеть игровая локация по которой в дальнейшем будет передвигаться персонаж и взаимодействовать с разными объектами.

Для вашего удобства все файлы проекта разбиты на категории и помещены в соответствующие папки, как на этом изображении:

Вы можете использовать фильтры для быстрой сортировки и поиска файлов, либо кнопку, обозначенную на картинке красным цветом для того, чтобы показать или скрыть панель источников материалов.

Создание персонажа

Для того, чтобы создать игрового персонажа вам нужно в меню Content Browser перейдите в папку «Blueprints» и нажать кнопку «Add New», выбрав команду «Blueprint Class».

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

Справка: Класс Character также подойдет для этих целей, кроме того, он может активировать команду движения по умолчанию. Однако в этот раз вы будете создавать свою собственную систему передвижения, поэтому класса Pawn будет достаточно.

Прикрепление камеры

Камера является своего рода способом для игрока осматривать игровое пространство. Сейчас вам нужно будет создать камеру с видом сверху. Для этого откройте двойным нажатием левой кнопки мыши BP_Player в Content Browser. Теперь вы можете приступить к редактированию.

Чтобы создать камеру вам нужно перейти к панели «Components», нажать «Add Component» и выбрать «Camera».

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

Теперь активируйте манипулятор перемещения, нажав клавишу W, а затем переместите его в положение с координатами (-1100, 0, 2000). Вы также можете вписать эти значения в поля «Location», которое находится в разделе «Transform» на панели «Details».

Если вы потеряли из виду камеру, просто нажмите клавишу «F», чтобы сфокусироваться на ней. Вам также нужно активировать манипулятор вращения, нажав клавишу «E» и повернуть камеру на -60 градусов по оси Y.

Образ и расположение персонажа

Красный куб будет представлять собой игрового персонажа, поэтому вам нужно будет использовать компонент «Static Mesh» для его отображения.

Сначала отмените выбор компонента «Camera», щелкнув левой кнопкой мыши пустое место в области «Components». Это необходимо сделать для того, чтобы новый добавленный элемент не стал дополнительным компонентом камеры. Теперь нажмите «Add Component» и выберите «Static Mesh».

Вам необходимо выбрать компонент «Static Mesh» и перейти к вкладке «Details». В появившемся справа от Static Mesh меню выбирайте пункт SM_Cube, для того, чтобы в игровом пространстве получить отображение красного куба.

В конечном итоге вы должны увидеть такое изображение (напоминаем, если вы потерялись в пространстве редактора, нажмите «F», чтобы быстро переместится к месту камеры):

Теперь пришло время создать нового игрового персонажа с именем Pawn. Для сохранения результата вам нужно нажать кнопку Compile и вернуться в главный редактор.

Создание персонажа

Прежде чем игрок сможет контролировать своего персонажа, необходимо указать несколько важных вещей:

  1. Тип персонажа, которым игрок будет управлять;
  2. Место, где этот персонаж появится при старте игры.

Создание игрового режима

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

Вам нужно перейти в Content Browser и найти папку Blueprints. Теперь нажмите кнопку Add New Blueprint Class. В появившемся окне выберите Game Mode Base и назовите его GM_Tutorial.

Теперь вам нужно указать, какой класс персонаж Pawn будет использоваться по умолчанию. Для этого дважды щелкните GM_Tutorial, чтобы он открылся.

Перейдите на панель «Details» и в разделе «Classes» в появившемся списке «Default Pawn Class» выберите «BP_Player».

Прежде чем вы сможете использовать новый игровой режим, необходимо указать его для конкретного игрового уровня. Это делается в настройках игрового мира. Сейчас вам нужно нажать Compile и закрыть редактор Blueprint.

Каждый игровой уровень имеет свои настройки. Вы можете получить доступ к настройкам и изменять их по своему усмотрению, выбрав Window World Settings. Другой вариант, как это можно сделать – перейти к панели инструментов и выбрать Settings ⇒ World Settings.

Новая вкладка World Settings откроется рядом с вкладкой Details. Тут вам нужно будет перейти к раскрывающемуся списку для изменения настроек GameMode и выбрать там GM_Tutorial.

Вы можете увидеть, что все классы изменились на те, которые вы выбрали в GM_Tutorial.

Наконец, вам нужно указать место, в котором где будет появляться игрок. Это делается при помощи специальной метки «Player Start» на карте.

Расположение метки Player Start

В процессе создания персонажа, система игрового режима автоматически ищет метку его расположения в игровом пространстве.

Для того, чтобы разместить Player Start, перейдите к панели управления и найдите там функцию Player Start. Теперь щелкните левой кнопкой мыши по Player Start и перетащите его из панели «Modes» в рабочую область, отпустите левую кнопку мыши.

Вы можете разместить метку в любом, понравившемся вам месте, а когда закончите, переходите на панель инструментов и нажимайте Play. Персонаж появится ровно в том месте, где вы установили метку Player Start.

Чтобы выйти из игрового режима, нажмите кнопку «Stop» на панели инструментов или клавишу «Esc» на клавиатуре. Кроме того, если вы не видите курсор, нажмите Shift + F1.

Следующей задачей будет настройка команды для движения игрового персонажа.

Настройка управления

Назначение команд для выполнения какого-либо действия называется привязкой ключа.

В Unreal вы можете настроить клавиши управления, которые будут выполнять определенное действие или вызывать событие при нажатии на них. События представляют собой это узлы, которые выполняются, когда происходят определенные действия (в этом случае, когда вы нажимаете связанную клавишу). Узлы, подключенные к событию выполняются после инициации события.

Этот метод связывания ключей подойдет даже ничего не понимающим в программировании людям, потому что не при этом не требуется прописывать специальный код. Например, вы связываете ключи при помощи левой кнопки мыши и называете это событие «Shoot». При желании, имя ключа можно изменить позже в его настройках.

Только представьте, насколько бы этот процесс был сложнее, если бы вы вводили для каждой команды специальный код.

Что такое Axis и Action Mappings

Для просмотра настроек ввода вам нужно перейти к Edit ⇒ Project Settings. Слева выберите Input в разделе Engine.

В разделе «Bindings» вы можете изменить данные входа.

В Unreal до