За последние несколько лет множество студий объявило о переходе с движков собственной разработки на Unreal Engine от Epic Games. Даже следующий «Ведьмак» будут делать не на родном RED Engine, что вызвало у поклонников и даже технических экспертов из Digital Foundry бурную реакцию.
Почему именно Unreal Engine 5 стал так привлекателен в индустрии? Почему становится всё меньше движков собственной разработки и даже Sony вкладывает в Epic Games сотни миллионов долларов? Давайте разбираться, чем он так хорош и как ещё сможет удивить нас.
Unreal Engine 5 помогает экономить ресурсы и время
Одними из главных поводов перейти с собственного движка на Unreal Engine для CD Projekt Red стали трудоёмкость разработки и вызванные этим ошибки. Как описывают сами сотрудники CDPR, создание движка параллельно с игрой это как «попытка прокладывать рельсы прямо перед идущим поездом».
Известно, что процесс создания игр и на готовом инструментарии сложен — тайтл может резко сменить концепцию, целые механики вырезаются на разных этапах, а новые идеи нужно где-то продумывать и обкатывать. Развивая собственный движок под каждую новую идею, разработчики тратят сотни человекочасов на лишнюю работу, особенно если в итоге идея отбраковывается, а в случае успеха зачастую получают результат ниже индустриального уровня.
С этим столкнулись разработчики Dragon Age: Inquisition, Mass Effect: Andromeda и Need for Speed, которых Electronic Arts заставила перейти на движок Frostbite от DICE. Красивой картинки и продвинутой системы разрушений, которые технология демонстрировала в серии Battlefield, оказалось недостаточно для гоночной аркады и RPG в открытом мире, что не могло не отразиться на качестве этих игр.
Разработчики из BioWare страдали, так как заточенный под шутеры движок был совершенно неприспособлен для создания игр от третьего лица. Также во Frostbite не было базовых механик вроде инвентаря, системы квестов и других вещей, которые команде пришлось разрабатывать вручную и к тому же с большими проблемами — технические специалисты DICE далеко не всегда могли помочь им в силу собственной занятости.
Не меньше пострадала и Need for Speed, которая расположена ещё дальше от концепции Battlefield. Игроки жаловались на деревянную физику и странную систему коллизий во всех частях серии, которые были сделаны на Frostbite, пускай все игры при этом отлично выглядели. Впрочем, эта история закончилась хорошо — сейчас EA уже не настаивает на использовании Frostbite, а даёт разработчикам возможность выбрать движок самостоятельно. Первой ласточкой стала Star Wars Jedi: Fallen Order, сделанная на Unreal Engine 4, а новую Mass Effect уже делают на Unreal Engine 5.
Одновременное создание движка и игры невероятно трудоёмко и затратно, из-за чего риск превратить проект в долгострой существенно повышается, но японские разработчики нашли способ затянуть разработку с куда большей эффективностью.
Считается, что поколение Xbox 360 и PlayStation 3 оказалось для японской игровой индустрии одним из самых тяжёлых. Переход в HD дался разработчикам страны восходящего Солнца нелегко, и основной причиной тоже были сложности с движками.
Исторически сложилось, что на Западе компании часто лицензировали друг у друга готовые решения, а в Японии было нормальной практикой заново создавать движок или адаптировать ещё сильнее под будущие игры. Не все студии придерживались такого подхода, например, та же Capcom использовала движок RenderWare наряду с Rockstar и Criterion, но это лишь исключение.
В итоге работа над движком начиналась задолго до разработки самой игры, затягивая процесс изначально. Проблемы с планированием в итоге отразились на катастрофически растянутых сроках разработки. Канонический пример — Final Fantasy 13, ради которой длительное время делали движок Crystal Tools. В итоге картинка получилась действительно кинематографического качества, но вот с открытыми пространствами случился конфуз — с ними технология не справлялась, из-за чего «тринашка» получилась до одури коридорной игрой.
На поколении PS4 случился ренессанс красивых и дорогих японских игр. В первую очередь за это стоит благодарить Epic Games. Она смогла грамотно зайти на рынок, предложив японским разработчикам то, чего не сделала ни одна западная компания — вся важная документация была переведена на японский язык. Сейчас осталось лишь считаное количество японских игр, всё ещё использующих собственные движки, и в основном это будут проекты Square Enix с её Luminous Engine. При этом ремейк Final Fantasy 7, Tekken 7, Street Fighter 5, Ace Combat 7, Bloodstained и другие хиты из Японии сделаны на Unreal Engine 4.
Использование популярного движка освобождает компанию от необходимости тратить миллионы долларов на содержание сильной команды технических специалистов, неустанно дорабатывающих проект. Эту команду можно подсократить и отправить выполнять самые специфические требования, необходимые конкретному проекту. А в это время остальные разработчики смогут работать над игрой с использованием уже готовых инструментов, протестированных сотнями людей. Плюс найти специалистов по Unreal Engine гораздо проще, чем по тем же Luminous, Crystal Engine или Frostbite.
Впрочем, несмотря на все плюсы, если Unreal Engine 5 займёт доминирующую позицию на рынке, от этого пострадают не только разработчики, но и игроки, о чем и предупреждали специалисты Digital Foundry в своём видео по мотивам анонса нового «Ведьмака».
Хотя глобально это кажется несколько надуманным. Да, во времена Unreal Engine 3 все игры на ней имели множество общих проблем, однако это давно позади. На Unreal Engine 4 выпущена масса игр с совершенно разными техническими особенностями и визуальными стилями. К примеру, Crash Bandicoot 4, ремейк Spyro The Dragon, Days Gone, Ghostwire: Tokyo и Octopath Traveler сделаны на Unreal Engine 4. Разве они между собой похожи?
Из-за чего Unreal Engine 5 такой прорывной?
Новый движок Epic Games с самого первого показа начал поражать своей технологичностью. Благодаря новым разработкам выбор в пользу UE не только даст возможность пользоваться наработками миллионов людей, упростит поиск персонала и предоставит подробную документацию, но ещё и позволит создавать некстген-игры в разы быстрее с помощью целого ряда инструментов.
Два самых громких названия, о которых мы услышали весной 2020-го, это Lumen и Nanite. Именно вокруг этих двух технологий больше всего шума — видимо, потому что их работу проще всего прорекламировать перед обычными игроками.
Что такое Lumen?
С древнейших времён разработчики мучились с созданием освещения. Раньше эту задачу взваливали на дизайнеров: пока специалисты по арту определяли настроение и атмосферу сцены, ватаги других расставляли искусственные источники и «запекали» освещение — то есть делали его статичным.
Нельзя было взять лампу со стола и полностью изменить освещение в комнате; выстрел по висящему фонарю тоже никак не менял сцену; смена дня и ночи происходила искусственно, не отражая реального перемещения светил и так далее. Отдельные объекты реализовывали с динамическим светом и тенями (например, фонарик в Doom 3 или свет от фар автомобиля в GTA 4), но просчитывать всё освещение «по-честному» было слишком ресурсоёмко.
Lumen в Unreal Engine 5 позволит всем разработчикам использовать глобальное освещение (то есть светить будет прямо с неба) и превратить все локальные источники света из статических в динамические. При этом существенно сократится потребность в дизайнерах, которые раньше расставляли и «запекали» их вручную, что также ускорит разработку и снизит её стоимость.
С другой стороны, у технологии есть и минусы. Из очевидного — невероятная ресурсоёмкость. Для Lumen используется сразу два вида рейтрейсинга, пускай и в несколько упрощённом варианте. Выбор между программным (то есть с использованием вычислений обычными методами) и аппаратным (то есть вычислений с использованием рейтрейсинга) отличается производительностью и качеством. Пока неясно, насколько эта разница будет заметна.
Также возникают проблемы и с арт-дизайном. Пока все источники расставлялись вручную, картинка оставалась контролируемой, но с динамическим освещением может потеряться кинематографичность сцен, которую теперь так просто не выстроишь. Это особенно хорошо видно на примере специального издания Metro Exodus, где «запечённое» освещение заменили на глобальное, и игра резко приблизилась к фотореализму, но одновременно с этим она стала менее зрелищной.
Впрочем, подобные проблемы можно решить, когда разработка изначально ведётся с учётом Lumen.
Что такое Nanite?
Работа Lumen завязана на другой технологии — Nanite. Её суть в том, что теперь не нужно искусственно снижать качество трёхмерных моделей и создавать несколько менее детализированных вариантов, которые подгружаются по мере удаления и приближения игрока. Эта классическая технология называется LOD (Level of Detail) и была придумана ещё для первой Spyro The Dragon. Теперь достаточно загрузить одну высококачественную модель — такого же уровня, что используются для производства самых дорогих фильмов — а движок уже сам решит, как именно изменить уровень её детализации, и самостоятельно внесёт изменения.
Nanite отталкивается от количества пикселей на экране, которое займёт объект, и самостоятельно «ухудшает» детализацию. По сообщениям специалистов, это уменьшит нагрузку на художников на 50-70% — раньше эти многочисленные «ухудшенные» версии объектов делались вручную для буквально всего: персонажа, мусорного бака, автомобиля и так далее.
Впрочем, у этой технологии тоже есть весомый минус — она работает только со статическими объектами. В той же демо The Matrix Awakens автомобили изначально создаются с применением «нанитов», но, как только на них появляются первые повреждения, Nanite-модель заменяется на обычную с использованием LOD — движок ещё не умеет просчитывать изменения Nanite-объектов.
Поэтому у ряда экспертов возникает вопрос к CD Projekt RED — как же в новом «Ведьмаке» будут выглядеть леса, если качающиеся на ветру деревья и всю растительность не получится сделать «нанитными»? Впрочем, поскольку движок только начинает развиваться, то технология ещё может быть серьёзно доработана.
Что ещё?
Мы поговорили о двух самых громких технологиях, от которых сообщество разработчиков шумит уже два года с анонса Unreal Engine 5. Но Epic Games предлагает ещё целую плеяду возможностей, о которых можно сказать более тезисно.
- MetaHuman — чтобы разработчикам было просто работать не только с объектами, но и с персонажами, Epic Games выпустила инструмент MetaHuman Creator, позволяющий создавать реалистичные модели людей. Инструментарий упрощён, поэтому создавать высококачественные ассеты несравнимо легче, чем в профессиональных редакторах вроде Zbrush или 3dsMax.
- Именно с помощью этого инструмента и работает массовка в демо The Matrix Awakens, где толпа отличается одеждой и внешностью, хотя модели Киану Ривза и Кэри-Энн Мосс сделаны с помощью полноценных сканирования и захвата движений актёров. А разработчики из GSC Game World пошли ещё дальше и создали отдельную утилиту по добавлению гнилых зубов персонажам для S.T.A.L.K.E.R. 2.
- Город в технодемке The Matriz Awakens сформировали в Houdini, а технология World Partition позволила поделить пространство на нужные области и одновременно работать на карте в реальном времени нескольким людям без уничтожения чужой работы. На генерацию города в демке ушло считанные недели, причём достаточно небольшой команды самой Epic Games.
- Megascans — чтобы было что превращать в «нанитную» модель и освещать с помощью Lumen, в кадре должны быть объекты, причём желательно высококачественные. Для этих целей в мае прошлого года Epic Games приобрела компанию Quixel, чей проект Megascans представляет собой огромную библиотеку высококачественных 2D- и 3D-ассетов, созданных с помощью фотограмметрии. Теперь огромная библиотека с более чем 10 тыс. наборов текстур доступна разработчикам на Unreal Engine 4 и 5 абсолютно бесплатно.
- Вдобавок Epic Games выпустила мобильное приложение для сканирования объектов, максимально упростив процедуру фотограмметрии — теперь для этого не требуется множество специальных камер с уникальным освещением. Нужен лишь современный смартфон.
- Niagara и Chaos — две системы, отвечающие за визуальные эффекты и разрушения. Если Niagara посвящена эффектам в принципе (например, созданию реалистичного дождя), то Chaos отвечает за эффекты при взаимодействии объектов, то есть это столкновение машин, взрывы, деформация ткани или расщепление агента Смита на частицы. Увидеть работу этих технологий можно в демо The Matrix Awakens — в постановочной погоне кажется, что взрывы и повреждения машин заскриптованы, но на самом деле они каждый раз обсчитываются в реальном времени, из-за чего кадровая частота иногда проседает. Как и с другими технологиями UE5, работать с ними легко, что ускоряет разработку.
Благодаря всему этому создавать огромные миры с высокой степенью детализации можно в гораздо меньшие сроки и с минимальным бюджетом. Игры станут дешевле в производстве, красивее и в теории даже оптимизированнее — звучит как сказка, не так ли? На самом деле, есть тут и подводные камни.
Об одном из них в своём ролике говорят специалисты Digital Foundry — чем больше разных движков используется в индустрии, тем больше игры будут отличаться друг от друга. Если все перейдут на Unreal Engine 5, то все проекты станут идентичными, вне зависимости от сеттинга и технологий Epic Games. У каждого движка есть свои особенности, будь-то «пластиковость» объектов в Unreal Engine 3 или бурая цветовая палитра в RAGE от Rockstar Games.
Другой вопрос состоит в том, что маленькие разработчики будут со всем этим делать? Да, небольшие команды смогут делать почти «ААА-игры» на Unreal Engine 5, но чем они будут их наполнять? Создать большой и красивый открытый мир мало, его надо чем-то наполнить, а соблазн сделать красивую картинку ради картинки может оказаться слишком велик. Выдержат ли сервера Steam и Epic Games Store вал огромных инди-игр с высококачественными ассетами?
Ну и напоследок стоит подумать о технических специалистах, которые теперь как бы особо и не нужны. С одной стороны, студиям станет проще искать новых сотрудников, поскольку речь будет идти об определённых технологиях и компетенциях в них, которые можно освоить на курсах и почитав документацию, а не обучаясь проприетарным технологиям компании долгие месяцы. С другой — теперь художники, аниматоры и некоторые другие дизайнеры просто не нужны в тех же количествах, что и раньше.
Рынок будет меняться, а во что это выльется, пока никто не знает. Разработчики пробуют новые технологии, Epic Games не стоит на месте и дальше развивает свой перспективный проект, а игрокам остаётся лишь ждать первых больших игр на Unreal Engine 5.