[Перевод] Сложное модульное архитектурное окружение в UE4

Тайлер Анлауф подготовил подробный анализ модульного окружения ROME: Church of Sant«Ivo созданного им в UE4 и 3ds Max. В статье он рассказывает о предварительном черновом плане (blockout), модульной сборке, освещении, постобработке и многом другом.

511ece74769f56ee3555788b4ce786ee.jpg


ROME: Church of Sant«Ivo


В данном анализе я поделюсь с вами своим процессом работы над ROME: Church of Sant«Ivo, хитростями, которым научился, трудностями, с которыми столкнулся во время работы, а также планами под дальнейшему усовершенствованию сцены, потому что она пока ещё не завершена.

f297291e1e0ec09d841b131535d1d5bc.gif


Цели проекта


Задачи этого проекта заключались в усовершенствовании моего процесса работы над графикой, изучении Unreal Engine и улучшении моих навыков работы с освещением, цветом и композицией. Храм Сант-Иво алла Сапиенца соответствует целям проекта — в нём очевидно заметны возможности работы с модульной структурой, освещением, цветом и композицией.

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

Хорошие референсы решают проблемы визуально


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

Вот пример нескольких референсов из моей коллекции.

0c54450bf2d4b4fa42f1e279fbae32ec.jpg


Чтобы координировать референсы на каждом этапе продакшена, их стоит упорядочивать. Для этого можно эффективно использовать Trello, Photoshop, или просто распределить референсы по папкам.

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

Для этого проекта оказались полезными даже старые рисунки, особенно когда дело дошло до дизайна уровня и определения масштаба. Также они дали мне понимание того, как в период барокко строились церковь и внутренний двор.

6cf3f9b41c3ee099e4b34434cbab0a5d.jpg


Планирование проекта


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

9b191edb1b8f6d4b0c55cf851d41027c.jpg


Здесь уже мы начинаем видеть, насколько огромно пространство в реальности. Заметьте, что женщина в правом нижнем углу ростом примерно с основание окна.

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

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

Черновой план


Черновой план (blockout) — это один из самых важных этапов в построении окружения, который часто пропускают или недооценивают. Качественный черновик может заложить фундамент успеха, особенно если ты работаешь в команде и над большими проектами.

2af99a2c1ea0e982f99741a5e1b8cdc9.jpg


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

Благодаря использованию BSP мне не так сильно хотелось добавлять детали до завершения черновика, что позволило сосредоточиться на дизайне уровня и метриках здания.

Ниже можно увидеть, насколько близок мой черновой план к финальной стадии модульного набора.

Черновой план:

f06d682e0c654e025e7dbf86951bdc3c.jpg


Готовый модульный набор:

976d29b7cb4fc55bb38a3dc37d3edd67.jpg


Благодаря свойствам BSP на этом этапе можно вносить любые серьёзные изменения. После тестирования и подгонки метрик в UE4 я разобрался с тем, как модульный набор будет работать с готовой геометрией ещё до того, как начал создавать детальные модели в 3ds Max или других пакетах.

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

98df22e9993d6f4e98ddb7f6b5f00538.jpg


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

cda385fdbdb00ef4d41182aa11f5efb6.jpg


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

c6d27a60961492765236f32ac828c992.jpg


Модульная конструкция


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

В большинстве случаев BSP в UE4 не так эффективны, как статичные меши. Поэтому я преобразовал мой BSP-черновик в статичные меши, а затем импортировал их 3ds Max для построения финальной геометрии.

В UE4 преобразовать BSP в статичный меш очень просто:

f6077efb134c09f396407b8a516e05cf.jpg


Построение модульного набора в 3ds Max начинался с определения крупных и средних деталей с параллельным их тестированием в UE4. Нет ничего хуже, чем считать, что закончил ресурс, а потом осознать, что совершил ошибку на раннем этапе. Усовершенствовав крупные и средние детали, я мог сосредоточиться на мелких деталях и оптимизации.

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

Выполняйте тестирование с самого начала проекта и делайте это часто!

4fbf1baaf56f511f92fd4e17a2297615.jpg


Так как я активно использовал бесшовные повторяющиеся текстуры, было чрезвычайно важно сохранять одинаковую плотность текселов для всех ресурсов. Этого я достиг с помощью скрипта для 3ds Max под названием TexTools, хотя существует и множество других инструментов и скриптов.

20e807cb0f8c8736f13dfc0f535e0a13.jpg


e1411c684b1f4ed1298e38f9073edc85.jpg


Блюпринты для модульной сборки


Чтобы сделать продакшен более эффективным, я создал блюпринты повторяющихся частей сцены. Для коридоров я создал в блюпринте 3 варианта, показанные на рисунке ниже красным, зелёным и синим цветами. Каждый имеет собственный тип дверей, окон и других деталей. Таким образом, мне достаточно было обновлять не 48, а только 3 секции коридора.

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

131aaa821510fa29eaf987fcef0a543a.jpg


Материалы


Я создал несколько материалов в связке из Substance Designer и Substance Painter. Однако из-за ограниченного времени я также пользовался Substance Source и Quixel Megascans. Это очень сэкономило время.

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

cadf659d0f57b58a873c541687a75c11.jpg


Функционал, прописанный мной в мастер-материале, позволил редактировать текстуры как в Photoshop, но в реальном времени и не выходя из UE4. Кроме того, я мог включить такие функции, как рисование вершин, и добавлять нормали деталей, если это необходимо для конкретного экземпляра материала.

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

Освещение


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

9a1b859b963cac597d40c93987bf95b4.jpg


Работу над освещением этой сцены я начал с изучения фотографий, фильмов и художников по освещению, чтобы понять, как свет помогает создать композицию и оживить модели и материалы в UE4. Рекомендую вам для начала посмотреть UE4 Lighting Masterclass, Lighting Academy by 51Daedalus, и The Art of Lighting with Boon Cotter в YouTube.




Большую роль в освещении играют материалы, потому что они определяют, как фотоны света отражаются от поверхностей. Тщательно проверяйте основные цвета, чтобы убедиться, что они калиброваны как можно ближе к стандартам PBR. Хорошей идеей будет делать карты основных цветов не темнее 0,02 в линейном пространстве. Более тёмные цвета превращаются в «чёрную дыру» для фотонов, что приводит к странным результатам в освещении.

И в мастер-классе по освещению в UE4, и в видео 51Daedalus об этом говорится.

b79b7ea6c53deccda0b9d879b40645cf.jpg


Освещение в этой сцене организовано достаточно просто. Решать задачу настройки освещения я начал с создания чёткого калиброванного фундаменрта освещения, как рекомендуется в UE4 Lighting Masterclass. После калибровки освещения и получения чёткоё основы можно было отталкиваться от этих параметров, чтобы достичь чего-то более графически приятного.

Параметры нормализованного освещения:

e1620bee649fd0fcd275aecdb3472711.jpg


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

89110cf01b4fcae6d3595f0f0184a875.jpg


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

badacb20e64ca1501f968bf7e82c7e4d.jpg


Чтобы усилить впечатление добавлением объёмных лучей, я использовал объёмный туман (volumetric fog). Также необходимо было настроить цвет объёмного тумана, потому что он оказывает огромное влияние на цветовую палитру и настроение. Наконец, плотность тумана помогла придать сцене ощущение масштаба, глубины и атмосферы.

af05f9f40b77ea4e01ba1dcfd093d7a4.jpg


Постобработка


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

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

18f1251b0c9c0b7d045cff671849c490.jpg


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

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

b7bb793ed61cae28a0cd51cb507569f2.jpg


Композиция


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

dbc1417d1b7b7d09a98c861502029a6f.jpg


Для создания интересного угла камеры я использовал принципы правила третей и золотой спирали.

0ddad4f779cac34f91ca5218e8502985.jpg


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

60d4c8c145da1accfe9a7944e1e025e2.jpg


Для получения хорошей композиции было полезно использовать в UE4 вместо стандартного актора камеры Cine Camera Actor, потому что он позволяет изменять дополнительные параметры камеры для создания качественного снимка. В данном случае я использовал настройку 16:9 DSLR filmback, потому что она обеспечивала хорошие результаты в моих кадрах окружения. Эксперименты с параметрами filmback могут дать разные интересные результаты, так что советую с ними поиграться. Изменение фокального расстояния позволяет добиться более кинематографического ощущения. В своих снимках окружения я обычно использую широкоугольный объектив. Однако для персонажей или крупных планов мелких объектов могут подойти портретный объектив или телевик.

19a0e84fbfa5d4dd83c807a714f96555.jpg


Следующие шаги


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

Готовые изображения:

511ece74769f56ee3555788b4ce786ee.jpg


f65ca4897eb38057b2d87a85b8e33e1d.jpg


976d29b7cb4fc55bb38a3dc37d3edd67.jpg


af05f9f40b77ea4e01ba1dcfd093d7a4.jpg


89110cf01b4fcae6d3595f0f0184a875.jpg


9a1b859b963cac597d40c93987bf95b4.jpg


Заключение


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

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

Другие мои работы можно посмотреть в моём портфолио.

Об авторе


Меня зовут Тайлер Анлауф, я работаю художником по окружениям в Human Head Studios в Мэдисоне (штат Висконсин). У нас очень талантливая команда, создавшая множество игр. Я имел удовольствие работать над Call of Duty: Online, Rune, The Quiet Man и над пока не объявленной игрой.

До прихода в Human Head Studios я впервые познакомился с цифровым искусством в старшей школе, где изучал фоторедактуру в Photoshop. Вскоре после этого я самостоятельно научился 3ds Max, CryEngine, Unity, программированию и композитингу видео. Решив начать карьеру в 3D, я приступил к изучению разработки анимаций и концептов (Animation and Concept Development) в Колледже Мэдисона, где меня обучали такие ветераны отрасли, как Эд Бинкли, Джефф Девитт и Натаниэль Олбрайт. Также мне удалось получить работу и интернатуру в Gear Learning, Field Day Lab и Scooter Software, где я разрабатывал мобильные игры, игры для PC и UI программного обеспечения.

Во время учёбы в колледже моими менторами стали Крис Хартманн и Итан Хайли из Raven Software. Они помогли отточить мои навыки, критикуя мои работы и расширили мои знания о графике AAA-игр. В конце концов мне повезло сразу после выпуска получить работу в Human Head Studios.

Ниже представлена пара примеров моих работ, созданию которых я научился у Криса и Итана.

725e35d6d52441b093e57433c7214cc5.jpg


def1dbf8ddf295956ebc62ebe51c9bd5.jpg


Интервью проведено Кириллом Токаревым.

© Habrahabr.ru