«Fragment» – короткометражка на Unreal Engine 4

Разработка игр | |

Команда художников Адриен Паге-Брунелла (Adrien Paguet-Brunella), Пьер-Александр Кот (Pierre-Alexandre Côté), Сэнди Чоу (Sandy Chow), Пьер-Александр Паскаль (Pierre-Alexandre Pascale), Александр Туркот-Жерве (Alexandre Turcotte-Gervais) и Изабель Вердон (Isabelle Verdon) выпустила короткометражный фильм на Unreal Engine 4.

Творческий процесс

Концепция фильма появилась в прошлом году во время последнего семестра в NAD, Школе цифрового искусства, анимации и дизайна (School of Digital Arts, Animation and Design). Это был проект для завершения учебной программы, и у нас было всего четыре месяца с января по май.

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

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

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

Настроение

Нам потребовалось две недели, чтобы изучить все и подобрать настроение для нашего проекта. Мы собрали концепты, фильмы и референсы. Главным нашим вдохновителем оказался Сава Живкович (Sava Zivkovic) с короткометражкой «IFCC». Мы также узнали много нового о перемещении камеры и ритме, вдохновленные фильмами Дэвида Финчера (David Fincher) и Уэса Андерсона (Wes Anderson). После двух недель сбора концепций, мы сделали подборку изображений, чтобы дать направление нашему производству.

Монолитные фигуры из фильма «Бегущий в лабиринте» и картины Жан-Пьера Угарте (Jean-Pierre Ugarte) вдохновили на создание похожего настроения в нашем проекте. На нас также оказали влияние работы арт-директора Рафаэля Лакоста (Raphael Lacoste) и концепт-художника Мартина Дешамбо (Martin Deschambault). Мы использовали их творчество в качестве ориентира при создании короткометражки как чего-то архаичного, туманного и неподвластного времени.

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

Повествование

Для передвижения по миру мы решили сделать историю с различными уровнями сложности, изображая простые эпизоды с преследованием. Идея заключалась в том, чтобы оставить открытый финал и дать возможность зрителю интерпретировать по-своему. Мы хотели убедить аудиторию в том, что наш фильм – лишь вершина айсберга и, возможно, часть какой-то большой истории. Мы также хотели сделать менее ясными линии героев, чтобы предложить зрителю определить главного героя и антагониста самому.

Мы сделали раскадровку, чтобы визуально представить наши идеи. Здесь мы стали редактировать и анализировать созданную нами историю и мир в целом. Сразу стало ясно, какие моменты необходимо убрать из сюжета и что нужно добавить, чтобы сделать историю понятной и интересной.

Для создания эпизодов в режиме реального времени мы решили использовать Sequencer в Unreal Engine. Мы хотели придерживаться стандартов игровой индустрии и получить адекватную частоту кадров, а также обойтись без постродакшна. Так, Unreal Engine благодаря своим техническим возможностям, полностью отвечал всем запросам и позволял создать именно то, что хотели мы.

В Unreal Engine оказалось легко и быстро тестировать формы и контрасты с примитивами и разными видами освещения. Мы использовали некоторые из этих снимков, чтобы получить самые удачные кадры.

Персонажи

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

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

Человек

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

Для создания кожи мы использовали шейдер кожи из вкладки Learn Unreal Engine. Мы старались изо всех сил, потому что в команде не было аниматоров. Это было сложно, зато весело.

Затем мы стали использовать физику Unreal Engine для перемещения кабелей, подключенных к голове мужчины. Наш друг Чарльз-Этьен Гуин (Charles-Etienne Gouin) присоединился к команде в последние две недели проекта, чтобы помочь оживить человека и дрона.

Дрон

Идея создания беспилотника пришла достаточно поздно от нашего наставника Себастьяна. Он предложил нам сделать простой диск, который мог бы подчеркнуть своими движениями ритмичность погони. Основываясь на этой идее, наш друг Луи спроектировал и создал этот дрон.

Дрон представляет собой сочетание могущества и распространенности одной фирмы по этому миру и подчеркивает динамику фильма. Мы хотели сделать дрон мощным и в то же время как бы тайным организатором. Мы использовали «Voodoo in My Blood» Massive Attack в качестве образца поведения нашего дрона. Вот наш второй переломный момент:

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

Гибкость Sequencer позволила нам анимировать дрон с помощью Unreal Engine без риггинга. Он состоит из Blueprint с освещением и постпроцессными эффектами вроде ударной волны.

Существа

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

Нам неожиданно пришла идея добавить оленя, который принес нам большое наслаждение. Логотип фирмы и помехи являются подсказкой, что люди, которые когда-то здесь жили, уничтожили всех живых существ, а потом попытались своими же технологиями воссоздать природу.

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

 

Окружение

Неделя 6

Неделя 10

Неделя 14

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

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

Себастьян Примо (Sebastian Primeau) и Мартин Дешамбо (Martin Deschambault) помогли нам с созданием качественных кадров и слаженностью целой короткометражки. Они заметили все допущенные нами ошибки и помогли исправить их. С 10 по 15 неделю мы показывали наш короткометражный фильм небольшой аудитории, чтобы получать отзывы зрителей и исходя из их оценок исправлять шероховатости.

Наша команда использовала только модельные ассеты и материалы, соответсвующие стандартам игр, так как все участники нацелились на работу в игровой индустрии в будущем. Мы создавали материалы в Substance Designer и делали вариации, используя плагин Substance. В нашем проекте были декали (текстуры, накладывающиеся на полигоны в процессе игры) для создания шума и зерна в ассетах.

Мы также использовали нод world-position, который позволил нам делать действительно большие ассеты и формы, которые использовались для строительства города с хорошим соотношением текселей вне зависимости от размера ассетов. Это позволило нам настроить материалы с открытыми параметрами в Sequencer, чтобы сделать качественным каждый кадр.

Это был серьезный вызов, но решая подобные трудности, мы узнали много нового о создании окружения. Мы меняли много параметров для ложной перспективы (fake perspective, симуляция параллакса), выставляли скорость смены кадров и перемещение тумана в окружении.

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

Технические проблемы

Самая большая трудность состояла в том, чтобы коллективно изучить от и до наш основной инструмент Sequencer, начиная с камер и тайминга и заканчивая специфическими визуальными эффектами. Мы были готовы изучить все-все функции Sequencer.

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

Для шейдеров и эффектов, привязанных ко времени, был применен альтернативный подход: шейдер времени (Time) был заменен на переменную, связанную в Sequencer через параметры материала. Это позволило нам создать несколько переменных, контролирующих каждую часть шейдеров: от времени до цвета и до того, как ударная волна перемещалась. Гибкость была невероятной: живые контролируемые визуальные эффекты, включая постобработку, редактировались художниками в реальном времени.

Легконастраиваемые свойства!

Технической фичей, которая заняла больше всего времени в процессе разработки, был эффект ударной волны, или сбоя. Было необходимо показать мощный удар, и в то же время он должен отличаться от тех же голографических эффектов. Над этим нужно было работать так, чтобы ударная волна воздействовала только на природные элементы вроде лося и огромного массивного дерева. Так, мы создали используемую для постобработки функцию материала «Glitch» для пузырька с ударной волной и мониторов в ванной. А ведь это простое искривление ультрафиолета, зато какое универсальное!

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

Комментирование и группировка узлов. Просто делайте это.

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

Спасибо за чтение! Мы надеемся, что наш короткоментражный фильм «Fragment» вдохновил вас на создание собственного уникального проекта в UE4. Вы можете посмотреть «Fragment» на Vimeo.

Источник: Take a thrilling ride through the archaic world of FRAGMENT, a student short film. По ссылке еще больше про основы рендеринга в реальном времени, основы Blueprint и обучающие видеоуроки Unreal Engine.

Мария Redream Морозова @redream_m redream@progamer.ru

Поделиться

Обсудить