Создание реалистичного окружения на Unreal Engine 4

Как создавать материалы, растительность и настраивать освещение.

Автор ресурса 80.lvl взял интервью у Андрея Александрова, художника по окружению в Bluehole. Андрей рассказал, как проходил процесс создания сцены «Весна в горах». DTF c разрешения главного редактора 80.lv Кирилла Токарева публикует перевод материала.

Создание реалистичного окружения на Unreal Engine 4

Создание «Весны в горах»

Обычно я работаю над предметами окружения, интерьерами и внешним видом помещений, но в этот раз я хотел научиться создавать огромные ландшафты как в «Ведьмаке 3» с помощью World Machine и Unreal Engine 4. Я опирался на виды природы Шотландии.

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

После этого я загрузил карту высот в Landscape Editor в Unreal Engine 4 и создал материал ландшафта. Он довольно простой — всего три разных материала, соединённых с помощью масок. Кое-где я вручную добавил снег.

После того, как я закончил ландшафт, я подумал, что стоит добавить ещё что-нибудь. Например, небольшой домик в низине. Работа над такой сценой всегда начинается с поиска референсов и создания заготовки.

Вот референс для дома
Вот референс для дома
Создание реалистичного окружения на Unreal Engine 4

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

Я выбрал плотность текселей в 1024 на 100 сантиметров, чтобы текстуры вблизи выглядели хорошо. После этого я использовал плагин TexTools для 3ds Max. Он быстрый, качественный и бесплатный. И в нём есть много классных фич вроде копирования коэффициента текселей с других объектов, автоматической установки групп сглаживания с UV-оболочек и так далее.

Создание реалистичного окружения на Unreal Engine 4

Материал для крыши я сделал в Substance Designer, затем добавил на неё рёбра. Я создал четыре разных деформированных участка, импортировал их в UE4 и распределил по крыше для лучшей производительности.

Создание реалистичного окружения на Unreal Engine 4

Детали

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

Создание реалистичного окружения на Unreal Engine 4

На окнах используются два материала — цельное дерево и запечённое стекло (излучение и карта шероховатости/металлического отлива).

Создание реалистичного окружения на Unreal Engine 4

Растения

В этой сцене было важно создать реалистичную растительность. Для этого я воспользовался Quixel Megascans.

Вот процесс создания травы.

Создайте плоскость и поместите на неё непрозрачную текстуру травы. Я использовал плоскость 200×200 сантиметров с сегментами 10×10.

Создание реалистичного окружения на Unreal Engine 4

Затем отделите каждую часть атласа.

Создание реалистичного окружения на Unreal Engine 4

Нужно держаться как можно ближе к границе травы, иначе она будет негативно сказываться на производительности. Чтобы двигать вершины, я использовал опцию Preserve UVs.

Создание реалистичного окружения на Unreal Engine 4

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

Создание реалистичного окружения на Unreal Engine 4

Вот основной материал для растений.

Создание реалистичного окружения на Unreal Engine 4

Так что не забывайте разрабатывать уровни детализации. Для травы я сделал два уровня детализации, уменьшил их в Simplygon на 15%. Для распределения травы я пользовался инструментом Foliage. Он довольно простой.

Материалы

Материалы я сделал в Substance Designer. Люблю эту программу.

Создание реалистичного окружения на Unreal Engine 4

Вот схема материала скалы.

Создание реалистичного окружения на Unreal Engine 4

На землю я нанёс цельную текстуру мёртвой травы от Megascans.

Карта высот штукатурки была сделана в ZBrush. Потом я смешал карты высот в Substance Designer и получил разные текстуры для использования в UE4.

Создание реалистичного окружения на Unreal Engine 4

Освещение

Освещение очень важно: хороший моделлинг можно испортить плохим светом, но хороший свет может вытянуть плохой моделлинг.

В этой сцене я использовал полностью динамический свет и тени, и он работает в Full HD при 60 кадрах в секунду на моей GTX 970.

Свет из окон — точечный. Для естественного света я использовал Exponential height fog и карту HDRi. Это позволило создать желаемую атмосферу. Вот как это влияет на сцену.

Также я прицепил направленный свет к небесной сфере с помощью Blueprint. Так получился солнечный свет.

Вот несколько полезных настроек света.

Создание реалистичного окружения на Unreal Engine 4

И не стоит забывать о постобработке.

Создание реалистичного окружения на Unreal Engine 4

Вот как она влияет на сцену.

Камера

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

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

Иногда для заполнения больших пространств можно пользоваться автоматическим созданием материалов. В Unreal Engine 4 есть такая функция: помогает расставить траву, деревья и камни в зависимости от поверхности. В моей сцене этого не потребовалось.

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

Работайте увлечённо и не останавливайтесь. Становитесь лучше с каждым новым проектом. Закончив одну работу, принимайтесь за другую, потому что нет предела совершенству. И не забывайте об освещении.

7474
5 комментариев

Also I attached the Direct light to the sky sphere via Blueprint.Также я добавил направленный свет на небесную сферу с помощью Blueprint.

Attached в смысле прицепил. Прицепил свет к небесной сфере, чтобы он направление света менялось вместе с ней.

5
Ответить

А, вон оно что. Спасибо!

Ответить

Дёшево, но со вкусом, так сказать )

1
Ответить

Как же это все сложно.

Ответить

Комментарий недоступен

Ответить