Создание сцены «Заброшенный город»

Художник по окружению Андрей Егоров поделился своим подходом к работе, лежащим в основе проекта «Заброшенный город». Он рассказал о работе с модульными элементами и показал простой способ настройки света. В работе были использованы Maya, Substance 3D Painter и Unreal Engine 5

Введение

Привет, меня зовут Андрей Егоров и на данный момент я живу и работаю в Португалии в Saber Interactive Porto. Свой путь в сфере 3D я начал как художник по пропсам и транспорту. Но меня всегда переполняло желание сделать что-то действительно большое и атмосферное.

Абсолютно всё что я знаю, я узнал, просматривая ролики на YouTube, анализируя работы других людей или спрашивая более опытных художников. Я сделал большой шаг в 3D благодаря небольшой инди-команде под названием TALLBOYS, они действительно очень высокие...

Планирование

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

Итак, с чего начинается каждая сцена? Правильно, с референсов. В интернете я нашёл работу художника Devins Lee и взял её за основу. Конечно же, я изучил множество референсов из The Last of Us и Uncharted.

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

Процесс моделирования и текстурирования

Одной из моих основных целей была работа с модулями. Здания отлично подходят для этого. Задача простая, заходим в интернет, ищем постройки, и разбиваем их на модули. Каждый мой модуль равен 2.2, 6, 8, 10 метрам. Ниже вы можете увидеть примеры модулей.

Для создания зданий я использовал мидполи с кастомными нормалями (weighted normals). В Maya я использовал этот скрипт. Для 3d Max вы можете найти похожий скрипт здесь. В Blender вы можете использовать модификатор FWN. Чтобы иметь возможность использовать покраску вершин (vertex paint), я добавил несколько дополнительных лупов для каждого модуля.

Я взял большинство текстур из библиотеки Megascans и смешал их в Quixel Mixer. Для упаковки текстур я использовал методы BR и NOH (смотреть с 20:00).

В городе очень много машин. Если бы я текстурировал каждую машину уникально, это заняло бы довольно много времени. Поэтому я решил создать одну машину, один грузовик и один автобус, и использовать маски для создания вариаций. Для корректных нормалей я использовал normal transfer. Проще говоря, я создал прокси-модели для автомобилей, из которых скопировал нормали для своих машин. На изображении ниже, я показал, как зафиксировать нормали на объекте в Maya, на примере простой модели. Если вы используете 3d Max, вы можете использовать этот скрипт.

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

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

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

Я смоделировал несколько листьев с помощью ZBrush, затем собрал несколько вариантов плюща и запёк их в тайловую и уникальную текстуру. Остальную траву я взял из библиотеки Megascans.

Освещение, композиция и цвет

Композиция

В качестве основных типов композиции я выбрал ведущие линии (leading lines) и правила третей (rules of thirds). Основное внимание было уделено зданию банка и зданию на заднем плане. Для переднего плана я использовал автомобили. Также, я добавил водонапорные башни и антенны на крышах, чтобы разнообразить силуэт.

Освещение

Все говорят, что новый Unreal Engine 5 — это круто, а Lumen — это просто супер-инструмент, и я наконец-то решил попробовать его в деле.

Действительно, вместе с Lumen настраивать свет стало намного проще. Для своей сцены я выбрал тип освещения «тень-свет-тень» (shadow-light-shadow). Классическая схема: холодные тени и теплый источник света. По настроению, мне хотелось получить что-то похожее на The Last of Us.

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

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

Заключение

Мне очень понравился пайплайн без запекания нормалей. Благодаря этому я сэкономил много времени. Особенно теперь, с технологией Nanite, мы можем скруглять геометрию сколько угодно и забыть о запекании. Ещё одна вещь, о которой я всё время думал: «Всё, что мы делаем, должно быть искусством».

Каждый пропс, каждый источник света, всё это является предметами искусства.

Спасибо за прочтение данной статьи и сайту 80 Level за возможность поделиться своими идеями. Если у вас есть какие-либо вопросы, просто отправьте мне сообщение на ArtStation или LinkedIn.

Автор работы: Андрей Егоров

Текст перевёл и подготовил Константин Пономарёв

Содержание скрыто
Показать
0
7 комментариев
Написать комментарий...
Райан Гослинг

Как будто скрин из дайинг лайт 2

Ответить
Развернуть ветку
Кирил Мифодиев

Я этот "город" на дтф вижу уже раз 3й или 4й.

Ответить
Развернуть ветку
птеротрахтель
Андрей Егоров

@Дмитрий Андреев
@Егор Денисов
Вы там разберитесь, это ваш сын или один из отцов

Ответить
Развернуть ветку
Дмитрий Андреев

Чзх? Деанон нашего внебрачного сына

Ответить
Развернуть ветку
Pavel Troshkin

Этот город кажется из dl2 спизжен

Ответить
Развернуть ветку
Tomas Caulfield

А за референсы платить кто будет?

Ответить
Развернуть ветку
Shoggoth

Вот сразу бы начал указывать автора в начале текста, цены бы тебе не было. Молодец.

Ответить
Развернуть ветку
Читать все 7 комментариев
null