Top
Обучение

Что должен уметь Game Developer. Blueprints

Егор Новаков, AI-разработчик Dragon’s Lake Entertainmen, рассказал о том, что можно сделать в Unreal Engine при помощи Blueprints.

Знакомство

Егор начал свой путь в GameDev с модификаций любимой игры еще в 9 классе. Это не требовало знания программирования, но давало опыт работы с комьюнити и понимание технического устройства программы. Затем он начал углубляться в разработку всё глубже:

«Немного изучив C# в универе, я начал делать простенькие игры на Unity и изучать подходы к проектированию игровых систем. Со временем, пришлось попробовать Unreal Engine 4 – мы разрабатывали свою VR квест-комнату командой в 3 человека и у нас даже получилось».

С тех пор Егор успел поработать фрилансером, инди-разработчиком, ментором, участвовал в ААА проектах; разрабатывал игры на мобильные устройства, Hololens, ПК, консоли. Имеет опыт с AR и VR, однопользовательскими и многопользовательскими играми, не-игровыми проектами. В данный момент занимает позицию AI-разработчика в компании Dragon’s Lake Entertainment; в работе комбинирует Blueprints и C++.

Blueprints

Блюпринты – это система визуального скриптинга Unreal Engine 4. Вместо построчного написания кода всё можно делать визуально, перетаскивая ноды, задавая их свойства в интерфейсе и соединяя их. Это хорошее средство прототипирования игр. Однако, на блюпринтах можно делать и готовые проекты почти любой сложности: от мобильной казуалки до хорошего АА-проекта. ААА-проекты выполняются на С++, поскольку требуют лучшей оптимизации. 

Ниже описаны некоторые из игровых элементов, которые могут быть реализованы при помощи блюпринтов.

Искусственный интеллект

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

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

Мультиплеер и сетевое взаимодействие

По сути, это взаимодействие игроков между собой. Позволяет сделать игру более разнообразной, потому что искусственный интеллект все-таки предсказуем, а игроки постоянно генерируют уникальные ситуации. Call of Duty, Battlefield, различные MMO, батл рояли – везде используется мультиплеер и сетевое взаимодействие игроков.

Игровая логика разделяется на две сущности: клиент – компьютер игрока, и сервер – машина, в которой существует игра. Клиент визуализирует графику и рассчитывает неважные для геймплея вещи. В то время как на сервере выполняются важные куски кода.

В Unreal Engine есть система RPC (Remote Procedure Calls). Она реализована в виде блюпринтов и позволяет разработчикам настраивать «тоннели», через которые игроки будут отправлять запросы серверу, а сервер – свои ответы игрокам.

Существует множество нюансов создания оптимизированного мультиплеера без лагов и задержек соединений, о чем я очень подробно буду рассказывать на блоке UE4 Blueprints курса «Game Developer».

Геймплей

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

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

Пользовательский интерфейс

Это те элементы игры, с которыми пользователь взаимодействует, когда в нее играет, то есть все, что касается управления и информации на экране. Речь про кнопки, иконки, менюшки, различные статы. Те элементы на экране, которые могут либо сообщать пользователю информацию о текущем состоянии игры (осталось столько-то хп/маны/патронов), либо позволять пользователю взаимодействовать с игрой (меню настроек, экран общения с ботами, чат, меню крафта и так далее).

Опять же, блюпринты полностью покрывают нужды разработчика относительно UI. С их помощью можно сделать все: пользовательский HUD, менюшки, подбор сервера, верстка, анимации и так далее. Также интерфейс можно сделать подстраивающимся под разрешение экрана.

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

Заключение

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

В целом курс нацелен на совсем новичков. Всего он содержит 8 блоков: Основы работы в UE4; UE4 Artist; Fundamental coding; UE4 Blueprints; UE4 coding; Software Architecture; QA; Soft Skills. По окончанию курса вы будете обладать всеми необходимыми знаниями для старта карьеры в Gamedev.

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


Статью подготовил Олег Мощенко.

Подписывайтесь на нас в Facebook, Telegram, Vkontakte, Pinterest.

+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
+1
0
Поделиться: