Что такое движок Unreal Engine и зачем на него переходить?

14873

На прошлой неделе Epic Games показала работу Unreal ENGINE 5 — новой версии одного из самых популярных игровых движков в геймдеве. В своей статье Евгений Строков, CTO подразделения WG Nexus компании Wargaming, рассказывает, в чем преимущество движка, как перейти на него с Unity и какие могут быть сложности.

Unreal Engine-1

Что такое Unreal Engine?

За свой почти 20-летний опыт в геймдеве я поработал с многими игровыми движками, а некоторые разрабатывал сам, будучи программистом. Занимался геймплеем, графикой, core-системами и игровым back-end для проектов на PC, консолях и мобильных платформах. И в разработке любого продукта вопрос игрового движка всегда является одним из очень важных.

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

Когда такого широкого доступа к популярным сегодня Unity, Unreal Engine, CryEngine и другим не было, люди садились и писали все сами. Это — сложно, долго и достаточно рискованно, так как не у всех команд хватает технических знаний и навыков для этого.

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

Один из самых популярных движков сегодня – Unreal Engine, разрабатываемый и поддерживаемый компанией Epic Games. «Эпики» сегодня являются одним из столпов индустрии, особенно в технологической части. Потому уровень качества и количество фичей, которые предлагаются разработчикам, оставляют многих конкурентов позади.

Следующее преимущество UE — он бесплатный. Есть определенные условия и роялти, но весь инструментарий доступен сразу и в полном объеме для создания игры AAA-качества. Широкий функционал подразумевает непростой интерфейс, особенно для новичков, но об этом я расскажу ниже.

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

Еще одним плюсом Unreal Engine является мультиплейерная игра «из коробки». Фактически, после запуска редактора в несколько кликов можно создать проект, в котором уже есть сетевая игра. Учитывая рост многопользовательских игр и ставки больших компаний на онлайн-режимы с несколькими игроками, это серьезное преимущество, которого, например, нету у Unity.

Как перейти с Unity на Unreal Engine и какие могут быть сложности?

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

Если вы работали с Unity, то переход на UE не будет сложным. Для дизайнеров и художников достаточно будет в течение нескольких дней просто изучить основы движка, многие концепции похожи. А вот программистам может потребоваться больше времени. Я рекомендую видео от самих Epic Games, где детально объясняется работа с движком для новичков и опытных разработчиков.

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

Например, программисту искусственного интеллекта стоит обратить внимание как реализованы Behavior Tree в Unreal Engine и сравнить с тем, что он использовал раньше, а техническому художнику — как импортировать ассеты и настраивать уровни детализации в движке или редактор материалов. На этап ознакомления у команды может уйти одна-две недели.

Следующий момент — это C++, на котором написан Unreal. Кроме того, что этот язык — достаточно сложный, есть специфика самого UE (теги, маркап), управление памятью. Потому с ним придется разбираться чуть дольше, особенно если раньше вы писали только на C# или Python. Но код на С++ работает все еще быстрее других языков, и трудность в усвоении — некая плата за техническое качество и производительность финального проекта.

Для тех, кто переходит с Unity, неким вызовом может стать система классов, которая в Unreal Engine более сложная. Намного чаще в разработке игрового кода приходиться использовать наследование от базовых классов Unreal, а не только компоненты. В остальном же эти системы похожи, и у специалиста, работавшего на других популярных движках, не возникнет особых проблем при переходе на UE.

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

UE4 и UE5 – в чем разница?

По показанному на прошлой неделе демо трудно судить о различиях между версиями Unreal Engine 4 и 5 версии, но две презентованные системы — Lumen и Nanite выглядят интересно.

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

Unreal Engine-2

Вторая система, Nanite, позволит переносить в игру ассеты высокой детализации, например, из ZBrush. Здесь Unreal Engine сам берет на себя работу по построению низкополигональной модели. Эта задача уже неоднократно обсуждалась в геймдеве и были не совсем удачные попытки ее решить.

Если система будет работать, как заявлено, это позволит перенести 30-40% работы художников на движок и существенно сэкономит время создания игры. Сейчас же художники руками простраивают низкополигональную модель, таким образом дублируя свою работу.

Пятая версия игрового движка от Epic Games носит не революционный, а скорее эволюционный характер. К Unreal Engine 4 также выходило несколько обновлений с крупными системами — Chaos Physics и эффекты Niagara, они тоже входят в основу UE5.

Кроме того разработчики заявили об обратной совместимости проектов на UE 4 и UE 5, а значит, ядро движка значительно не меняется и система базовых классов, на которых строится геймплей, останется такой же. Но нужно ждать релиза.

Стоит ли начинающему геймдизайнеру осваивать Unreal Engine?

Однозначный ответ — да, стоит. Да, у Unreal Engine есть особенности, которые могут отпугнуть геймдев-новичков. Интерфейс редактора достаточно перегружен и непрост в освоении. Естественная первая реакция начинающего разработчика на это — зачем вот эти параметры, кнопки и окна нужны? Да и C++ не самый простой язык программирования, потому многие начинают с Unity, хоть и там ситуация в чем-то похожа. С другой стороны, освоив Unreal, можно получить опыт работы с сильным и гибким инструментом для создания игр AAA-уровня.

Но и назвать UE недосягаемым для начинающих тоже нельзя. В Wargaming есть хороший пример — геймдизайнер Кирилл Маль, историк по образованию. Он работает в компании уже 20 лет и тоже освоил Unreal Engine около года назад. Теперь с небольшой командой из 5 человек работает над одним из наших проектов.

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

Например, в эту субботу, 23 мая, состоится бесплатный Unreal Meetup от Wargaming, где будет спикер и из Epic Games.

Список ресурсов для начинающего UE-разработчика:

YouTube-канал от авторов Unreal Engine

Туториалы:

Курсы:

Gameplay

Art

Автор: Евгений Строков, CTO подразделения WG Nexus компании Wargaming

Оставить комментарий

Комментарии | 0

Поиск