

Unreal Engine: что такое и откуда взялся
Сказать, что Unreal Engine — новичок в медиаиндустрии, — большая ошибка. История создания Unreal Engine начинается в девяностых годах прошлого века, когда программист-энтузиаст Тим Суини создает свой первый коммерческий проект — игру-головоломку ZZT.

У игры была примечательная характеристика — в комплекте шел продвинутый редактор игровых уровней. Дело в том, что изначально проект задумывался именно как редактор, и только со временем перерос в игру. Тим регистрирует компанию «Potomac Computer System» и начинает продавать свою игру. Немного позже он решает переименовать компанию, чтобы иметь более звучное игровое название «Epic Mega Games». Название было уловкой, чтобы сделать вид, что компания большая. Тим продолжил разработку игр и даже начал набирать штат сотрудников, чтобы делать игры более качественными — в первую очередь он нуждался в хороших художниках.

Выход «Doom» повлиял на Тима и появившийся к тому времени штат сотрудников. Несмотря на то, что сама игра произвела впечатление на разработчиков, игровой движок (то есть тот самый редактор, в котором игра сделана) Тим Суини называл плохим, и другие члены команды тоже не испытывали от движка особого восторга. Суини решил, что команда может сделать игру лучше Doom, но он не хотел делать просто игру. Для начала он хотел разработать среду, в которой потом будет создана игра. Мы помним, что первый коммерческий проект Тима был как раз в первую очередь средой разработки. Всего за два с половиной года Тим в одиночку пишет «Unreal Engine» (далее UE), на котором была создана игра с лаконичным названием «Unreal». Для своего времени игра имела крайне качественную графику, превзошедшую тот самый Doom.
Но что было еще важнее — вместе с игрой шел редактор, что было обусловлено заботой о мододелах — энтузиастах, создающих модификации для игр. И это не осталось незамеченным.
Разработчики из других студий проявляли интерес к удобному движку от Epic Mega Games, и, конечно, хотели получить лицензию на использование технологии в своих проектах. С самого начала движок выделялся на фоне других программ тем, что показывал результат работы художников в реальном времени. Буквально, что собрано во вьюпорте, то и будет видеть потом игрок. Дела компании пошли в гору. «Epic Mega Games» отказались от «Mega» в своем названии, превратившись в ныне известную каждому игроку «Epic Games». Серия игр «Unreal» превратилась в витрину, на которой компания показывала возможности своего движка, а сам движок продолжал свое развитие — в нулевых вышли вторая и третья итерации программы, а также версия для независимых разработчиков.
Unreal Engine и игровая индустрия
За свою историю более чем в четверть века Unreal Engine оказал огромное влияние на игровую индустрию. Достаточно интуитивный движок имеет огромный инструментарий, понятный интерфейс, качественную документацию (которую рано или поздно открывает каждый пользователь, желающий перейти из категории любителя в профессионала) и огромное сообщество, собранное за многие годы развития UE. Движок использует C++, который, в свою очередь, является чуть ли не самым популярным языком программирования, и, несмотря на то, что в UE он имеет некоторые отличия от своей классической версии, факт использования именного этого языка во многом помог другим разработчикам приобщиться к Unreal Engine.
В нулевых на Unreal Engine 3 выходило огромное количество проектов категории ААА — так в игровой индустрии называют высокобюджетные проекты. Что примечательно — игры выходили в разных жанрах и с разными визуальными стилями — Unreal Engine старался и продолжает стараться быть универсальной средой разработки, в которой можно создать любую игру.
Получить Unreal Engine 3 можно было только по лицензии, но в 2009 году компания Epic Games выпускает Unreal Development Kit, созданный на базе UE3. Эта версия движка была доступна любому желающему бесплатно.
С Unreal Engine 4 продолжилась идея распространения программы для всех желающих приобщиться в движку. По началу его продавали по подписке за 19 долларов, а позже сделали вовсе бесплатным. Разумеется, с сохранением условия, что разработчики будут отчислять Epic Games процент с продаж игры, разработанной на их движке. Unreal Engine 4 использовался в сотнях разных проектов и продолжает использоваться до сих пор.
Unreal Engine 4 продолжил идею своей предыдущей версии — это движок для создания всего — от простой песочницы до реалистичного экшн шутера. Теперь, когда UE стал доступен всем, инди разработчики тоже оценили движок, и потому в списках игр на UE можно встретить как новый «Gears of War», так и небольшую инди игру вроде «Astroneer».
Также стоит отметить, что долгое время на рынке движков среди разработчиков первые позиции занимали (и продолжают занимать) Unreal Engine и Unity. Есть и другие движки, мощность которых может местами быть даже выше, как, например, RE Engine от компании Capcom или Frostbite от Dice. Однако что UE, что Unity, ни один из них не требует покупки дорогой лицензии для использования — движок можно просто скачать с сайта компании, изучать и работать в нем столько, сколько нужно, и не тратить на это свои кровные до момента выпуска проекта.
Тим Суини говорил в одном из интервью, что сейчас, если сравнивать UE с Unity, то у второго гораздо более низкий порог входа. Однако UE компенсирует свою сложность огромным инструментарием, с самого начала заточенным на разностороннее использование. Да, изучать его сложнее, но и использовать его можно для куда большего количества проектов.
Тим Суини также говорил, что лучше потратить больше денег на этапе разработки инструментария для разработчиков, чтобы потом разработка не затягивалась из-за неудобного и непроработанного функционала движка.
Сейчас в игровой индустрии наблюдается массовый переход многих компаний на Unreal Engine, даже тех, что имеют свои качественные движки. Обусловлено это не только дороговизной создания и поддержки собственных внутристудийных движков, но и тем, что найти специалиста по UE значительно проще, чем переучивать новых сотрудников работать с собственным софтом.
Сами Epic Games в последние 7 лет активно заняты поддержкой Fortnite — многопользовательского шутера. Несмотря на свою бесплатность, внутриигровые транзакции позволяют Epic Games разрабатывать свой движок и развивать собственные магазины игр и ассетов. Также понемногу занимаются издательской деятельностью, помогая другим компаниям выпускать свои игры.
Unreal Engine и кинематограф
Отойдем истории и использования UE в игровой индустрии и посмотрим, использовался ли он в кино.
А история использования UE в кино начинается с его конкурента — игрового движка Unity. Джон Фавро, снимавший «Книгу Джунглей», устал от хромакея и решил использовать игровой движок для создания предварительной визуализации некоторых сцен — превиза, и виртуального продакшена, благодаря которому актеры в VR-очках могли видеть 3д сцену в реальном времени.
Затем Джон Фавро взялся снимать ремейк «Короля Льва». На этот раз каждую сцену сначала создавали в движке, и только после этого приступали к съемкам. Такой подход упростил задачу как актерам, так и художникам по визуальным эффектам. Актеры могут ориентироваться не на раскадровки, а на виртуальную реальность, а режиссер сразу видит графику и может давать более четкие распоряжения команде художников. Фавро убедился, что его метод съемок оказался удобным, а его коллеги из Marvel переняли подход для фильмов «Тор: Рагнарек» и «Стражи Галактики 2».
Начиная с «Мандалорца» Фавро принял решение перейти на Unreal Engine 4. По традиции «Звездных Войн» привлекли Industrial Light and Magic, а также позвали специалистов из Epic Games. Технология Stagecraft позволяет выводить изображение из движка на LED-панели, таким образом создавая окружение вокруг актеров. Что, в общем, тоже оказалось удобно. Актеры видели не синие панели, которые позже заменили бы на графику, а полноценное окружение, выводимое со всех сторон. Ориентироваться в таком пространстве оказалось значительно проще.
Этот подход также помог сэкономить на декорациях — художники могли собрать любую декорацию в UE и натянуть ее на экран. Что не избавляет от необходимости использовать декорации в принципе, но все равно знатно уменьшает их количество в сцене. Более того, благодаря UE художники очень быстро могли вносить правки в сцены — как изменять наполнение объектами, так и менять время суток. Также на актерах нет зеленого рефлекса от хромакея, и создатели сериала приняли это во внимание — весь костюм главного героя это буквально набор металлических поверхностей, отражающих свет. Представьте себе, как VFX художники потом удаляли бы с них зеленый цвет.
В некоторых сценах вообще не использовали дополнительное освещение, как, например, в сценах в пустыне — LED панелей хватало для создания естественного освещения.
LED панели настолько хорошо могут вписаться в окружение, что станут полноценной его частью, особенно на камеру. Разумеется, нужно предварительно подогнать все декорации правильно.
Ранее, еще до открытия Фавро UE4, в тех же «Звездных Войнах» уже применяли Unreal Engine для фильмов «Изгой Один» и «Соло». Там тоже использовался виртуальный продакшн. Девятый эпизод «Звездных Войн», а также другие сериалы по вселенной, тоже использовали виртуальный продакшн и комбинированные съемки на UE. Вне Диснея его применяли для «Планеты обезьян» от студии Fox.
Еще одно преимущество UE -— наличие огромной библиотеки высококачественных отсканированных ассетов (то есть перенесенных из реальности в 3D объектов и текстур). Благодаря ним создание сцен становится проще и быстрее.
Однако кроме виртуального продакшена и комбинированных съемок Unreal Engine в кинематографе больше нигде пока не применяется. С чем это связано? Движок уже доказал, что способен выдавать очень реалистичную картинку, причем показывать он ее может в реальном времени, был бы только достаточно мощный компьютер.
Однако для VFX художников этой способности сейчас видимо недостаточно. Существует огромное количество параметров, необходимых для добавления более сложной графики в кадр. Безусловно, пейзажи и локации — это круто, но ведь существуют еще и взрывы, природные катаклизмы, магия и другие эффекты, которые нравятся зрителям.
Cascade Particle System, инструмент UE4 для создания эффектов, хорошо подходит для игр, однако когда дело доходит до киношного качества, соревноваться с Houdini он не способен.
Повесть о том, как Unreal Engine перевернул всю CGI индустрию
В 2020 году Epic Games анонсировали Unreal Engine 5, первая же презентация которого показала, что теперь движок способен делать фантастические вещи.
Первое, что звучит странно и, вероятно, дико для любого 3d художника — полностью виртуализированная геометрия и система глобального освещения.
Сначала немного теории. Для фильмов (как и для игр) при создании моделей нередко приходится делать не только саму модель, но и ее копию с меньшим количеством треугольников (из которых модель состоит). Детализация, упущенная на упрощенной модели, превращается в карты нормалей — текстуры, имитирующие мелкие детали. Для игр также требуется создавать от 3 до 8 разных вариаций одной и той же модели, чтобы постепенно погружать ее по мере приближения игрока.
Здесь же разработчики показывают, как засовывают в игровой движок модель на 33 миллиона треугольников, и при этом UE умудряется рендерить ее в реальном времени на Playstation 5. Движок самостоятельно меняет уровень детализации на модели, основываясь на том, сколько пикселей на экране она занимает. И, как только зрители успевают свыкнуться с мыслью, что движок теперь может поддерживать модели с таким уровнем детализации, героиня ролика входит в комнату, где та же модель поставлена еще 500 раз, что примерно равняется 16 миллиардам треугольников одних только статуй. Для сравнения — обычно на модели людей в современных игровых проектах может уходить в среднем всего 40 тысяч полигонов (хотя может переваливать и за сотню, что все еще меньше 33 миллионов).
Есть и обратная сторона у такой графики. Вес всего проекта — 150 гигабайт на 9 минут игрового процесса. Для игр это неприлично много, однако с точки зрения кинопроизводства — более чем нормально.
Свет — одна из главных причин, почему на видеокартах включаются вентиляторы. Просчитывать траектории лучей, отражения от каждой поверхности и рефлексы объектов — довольно ресурсоемкая задача для компьютеров. Любой софт для создания 3D графики может просчитывать эти траектории, но не в реальном времени — на один кадр может уходить как 10 секунд, так и 30 часов — зависит от сложности графики, устройства и самого софта. Для «Трансформеров» в 2007 году каждый кадр под Imax рендерили по 38 часов, если верить дополнительным материалам к фильму.
В играх трассировку лучей начали применять совсем недавно — поспособствовал тому выход видеокарт с RT ядрами. Благодаря ним игроделы смогли создавать реалистичный свет в реальном времени для игр. Ниже можно посмотреть, как выглядит «Cyberpunk 2077» с трассировкой лучей и без нее.
Lumen, который представили Epic Games в UE5, можно запускать и на устройстве, не поддерживающем трассировку в реальном времени. Сама система Lumen, в отличие от трассировки, является не математически точной симуляцией, а имитацией отражения лучей. Однако система справляется со своей задачей более чем хорошо — благодаря ней теперь каждый может создавать сцены с красивым светом, что привлекло к UE 3D художников из разных отраслей, в том числе моушн дизайнеров, создающих рекламные ролики, и архитектурных визуализаторов.
Вот запись игрового процесса игры «Unrecord», создаваемой на UE5 сторонними разработчиками. То, что это игра, выдает только наличие интерфейса в некоторых моментах.
Также в ролике-презентации показали симуляцию воды в реальном времени — вода реагирует на шаги героини. Симуляция воды — довольно сложный процесс, особенно в реальном времени. В играх нередко для изображения воды используются обычные плоскости с натянутой поверх них подвижной текстурой воды — так удается сэкономить ресурсы компьютера.
И система, названная Chaos, позволяет симулировать разрушения и движение ткани (шарфа на героине).
Команда Epic Games не перестает удивлять с тех пор, как показала первую версию Unreal Engine 5. Каждое последующее обновление привносит новые функции, развивающие способности движка.
Двумя годами позже Epic Games продемонстрировала новые способности UE5 на примере ролика по вселенной «Матрицы». На это раз показали реалистичных людей, симуляции толп и транспорта, а также огромный город.
Здесь же показали чуть больше саму систему разрушений — машины реагируют на попадания и разваливаются.
Однако анрил может вычислять не только в реальном времени, как в случае с играми, но и делать более сложные рендеры, на что времени уходит немного больше. Более того, UE умеет работать с пассами, используемыми в других программах вроде Houdini. Но прежде рассмотрим, как Unreal Engine справляется с рендером киношного уровня без посторонних программ.
Некоторое время назад Epic Games приобрела компанию Quixel, занимающуюся сканированием и созданием гиперреалистичных ассетов. В рамках проекта «Ninety Days» команда Quixel подготовила видео, чтобы продемонстрировать, на что способен движок. Всего несколько художников и по 3 дня на каждый из 42 шотов.
Movie Render Queue, еще один инструмент UE, позволяет рендерить кинематографичные шоты не в реальном времени. В этом инструменте можно настраивать буквально все, что требуется для последующего композитинга — от размеров выходного изображения до любого из необходимых пассов.
Стоит упомянуть о технологии Metahuman, позволяющей создавать реалистичных людей, а также анимации для них. Причем для этого не требуются навыки аниматора — только наличие айфона. На презентации технологии записали лицо актрисы, а UE всего за 3 минуты конвертировал видеоряд в анимацию для 3D персонажа. Использовать такую анимацию можно не только на персонажах с похожими пропорциями лица — анимация подойдет для любого метахьюмана.
На видео ниже полноценная короткометражка «Blue Dot» с метахьюманом в главной роли.
Реалистичность метахьюманов уже сейчас находится на очень высоком уровне. Что важнее — создание такого уровня реалистичности становится все доступнее для обычных пользователей.
Unreal Engine — очень мощный софт, благодаря которому в игровой индустрии появляется все больше инструментов для создания крайне реалистичной графики. И благодаря этой ориентированности на реализм, его теперь используют и в киноиндустрии. Инструментарий UE заточен для удобной работы, что нравится художникам. С 2021 года, когда вышел UE 5.0 вышло еще 5 обновленных версий, каждая из которых добавляла все больше возможностей, снимавших многие ранее существовавшие технические ограничения — от количества треугольников на модели до количества источников света. И самое главное — абсолютно каждый желающий может попробовать эту программу и работать в ней бесплатно, в то время как другие программы в индустрии стоят невероятных денег даже для обычных пользователей. Тим Суини и его команда действительно смогли создать инструментарий, который во многом упрощает жизнь как среднестатистического художника-любителя, так и крупных компаний, таких как LucasFilm.