Создание фантазийного дома на фоне утёса в 3D
Майкл Хиневич поделился своим рабочим процессом за сценой «Скрытый утёс», вдохновлённой игрой No Rest for the Wicked. Он показал, как создавал текстуры для стилизованного вида, объяснил, как были сделаны облака, и рассказал, как случайность превратила изображение в сюрреалистическую картину маслом.

Введение
Привет, меня зовут Майкл, и я художник по окружению из Беларуси, сейчас живу в Шанхае. Я начал изучать 3D в 2019 году, используя бесплатные ресурсы вроде YouTube и Polycount, и примерно через год получил свой первый оплачиваемый заказ. С тех пор мне посчастливилось внести свой вклад в несколько проектов.
Скрытый утёс
Игры всегда были одним из моих самых больших увлечений в жизни. Я большой поклонник «Ведьмака», вселенной Warcraft, Gothic, а недавно — Warhammer 40,000 (спасибо, Джон).

Я услышал о No Rest for the Wicked от Moon Studios несколько лет назад и был очарован её художественным руководством и освещением. Я приобрёл её в раннем доступе и провёл много часов, исследуя остров Изола Сакра. Их команда проделала потрясающую работу, создав атмосферу тёмного фэнтези. Это вдохновило меня на создание чего-то подобного.

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

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

Я создал несколько текстур местности и травы, используя Substance 3D Designer и Photoshop. Когда я был удовлетворён общим художественным направлением, я приступил к созданию блок-аута.

Блок-аут
Я использовал PureRef для соответствия композиции концепта. Шаги, которые я предпринял для настройки PureRef:
- Создать камеру в Unreal и заблокировать её.
- Заблокировать PureRef на экране, сделав его прозрачным для мыши (Ctrl+T).
- Уменьшить непрозрачность PureRef до 30–50% (Ctrl+Shift+ -/+).
- Начать блокировать сцену в Unreal, используя её основные примитивы и масштабные ссылки (манекены).
Совет: перенос концепта из 2D в 3D может быть головной болью. Используйте логику реальной жизни и здравый смысл; ничего страшного, если вы не на 100% точны в пропорциях мелких деталей. Главная цель — сопоставить большие формы.

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

Я предположил, что крыши в No Rest for the Wicked представляют собой модульные детали, собранные вместе. Это даёт гибкость в создании формы и делает её очень индивидуальной.
Всё началось с одной плитки. Я использовал экземпляры для дублирования и сборки кровельной плитки. Lattice Deformer помог мне изогнуть блок-аут без разрушения геометрии. После этого я экспортировал его в Unreal, чтобы проверить размеры и модульность. Я сделал две плитки, чтобы покрыть всю крышу.
Совет: экземпляры полезны, если вы хотите сохранить возможность изменить geo позже. Я постоянно этим пользуюсь. Также для упрощения рабочего процесса в Maya я использую специальный набор инструментов.

После скульптинга высокополигональной модели я объединил всё в три сабтула — черепицу крыши и две деревянные части. Так у меня не будет проблем на этапе запекания из-за перекрывающихся клеток.
Я использовал Auto Groups, чтобы назначить разный цвет каждому сабтулу, затем использовал Polypaint из Polygroups для создания ColorID в Substance 3D Painter.
Если бы это была настоящая игра, я бы, наверное, сделал просто одну доску и одно бревно, а затем дублировал бы их после запекания текстур; это сэкономило бы мне время и ещё больше пространства для текстур.
Шаги, которые я выполнил, чтобы подготовить сетку для будущей низкополигональной модели:
- Объединил и использовал DynaMesh для соединения всей черепицы крыши.
- Использовал кисть Smooth and Move и снова DynaMesh с более низким разрешением, чтобы избавиться от промежутков между черепицами крыши.
- Уменьшил количество полигонов до разумного числа и экспортировал в Maya.
Совет: Чтобы ускорить перенос ассетов между Maya и ZBrush, я использую удобный инструмент.

При работе с уникальными текстурами я стараюсь использовать как минимум 70% пространства UV, чтобы не тратить его впустую. Я знал, что верхняя часть (черепица крыши) будет в фокусе ассета, а нижняя (деревянные доски) будет почти скрыта. Это знание помогло мне скрыть большинство швов UV и использовать меньшую плотность текселей в нижних областях, уменьшая размер UV-оболочек.
Совет: Упрощённые сетки иногда имеют растянутые треугольники, которые могут создавать артефакты затенения в движке. Лучше заменить их на блочную версию сетки, если это подходит, или сделать новую и подогнать её под высокополигональную. Это также сэкономит вам время на развертке UV.
Текстурирование
Я потратил большую часть времени, перескакивая между Substance 3D Painter и Unreal Engine, дорабатывая текстуры, рисуя от руки и экспериментируя с умными материалами и фильтрами.

Я использовал плитку и камень для текстурирования коттеджа, созданного полностью в Substance 3D Designer.

Чтобы текстуры выглядели более стилизованными, я использовал узел Quantize Color, применённый к карте нормалей. Я использовал этот узел и для уникальных текстур, таких как деревья и скалы.
Обычные техники покраски вершин не дали желаемого эффекта, который я искал. Я хотел, чтобы текстуры на стенах накладывались слоями, чтобы сделать их более правдоподобными и интересными. Этот шейдер Unreal Engine позволил это сделать.
Облака
Я хотел, чтобы небо выглядело как можно ближе к концепту, потому что оно естественным образом направляет взгляд зрителя на коттедж.

Я использовал этот урок и нарисовал облака в Photoshop с помощью специальных кистей, используя подход с RGB-маской для разделения разных частей облаков и получения приятных градиентов.
Во время настройки шейдера в Unreal Engine я случайно сделал так, что облака стали выглядеть совершенно не так, как в Photoshop. Они начали напоминать сюрреалистическую картину маслом, что только улучшило их вид, и я оставил всё как есть.
Совет: Подобные случайности часто происходят во время экспериментов. Не бойтесь нарушать правила и выходить за рамки официальной документации и рекомендаций. Это может дать вам неожиданные результаты.
Дизайн уровня
Я устал делать одноразовые окружения, поэтому решил немного расширить это. Представлять, что может быть за занавесками, довольно сложно, но также и полезно. Это даёт вам возможность проявить индивидуальность и стимулирует творческое мышление. Естественно, это значительно увеличило время производства, но мне было так весело делать все эти дорожки и пшеничные поля, что я даже не почувствовал этого.
Совет: создание окружения на 360 градусов не только увлекательно, но и даст вам множество новых ракурсов камеры, которые вы сможете использовать позже на этапе рендеринга. В моём случае я даже добавил несколько игровых ракурсов.


Я вылепил местность, используя базовые инструменты Unreal Engine и умный материал Landscape. Почти все ассеты в игровой зоне были размещены вручную. Для листвы, мелких камешков, фоновых деревьев и скал я использовал инструмент для рисования травы. Фоновые холмы на самом деле представляют собой увеличенные камни, а облака — это набор карточек, объединённых в комплект. «Кекс — это ложь!»
Освещение
Я постоянно корректировал свет на протяжении всего проекта. Я хотел, чтобы свет в моей сцене был магическим и живым. Когда 90% ассетов были готовы, я решил довести всё до ума. Этот процесс включал в себя множество экспериментов с Lumen и настройками света.
Основные компоненты настройки освещения:
- Направленный свет
- Экспоненциальный высотный туман
- Атмосферный слой неба
- Свет неба
- Объём постпроцессинга
- AO
Секретным ингредиентом в моём случае было нарушение настроек Lumen путём увеличения интенсивности непрямого света и интенсивности объёмного рассеяния на направленном свете до каких-то сумасшедших чисел. Вместе с сильным эффектом bloom и материалом Light Function, прикреплённым к направленному свету, это дало желаемый результат.
Настройки света в Unreal Engine:
Ночь
Несколько вещей, которые я сделал для улучшения ночной сцены:
- Изменил форму облаков в настройках материала, чтобы придать им более спокойный и менее агрессивный вид.
- Заполнил небо звёздами, добавив прозрачную карточку, созданную в Photoshop.
- Разместил карты тумана на заднем плане с помощью EasyFog.
- Создал излучающую текстуру для окон.
- Разместил дополнительные точечные источники света для создания эффекта ободка.

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

Несколько рекомендаций, которые могут помочь показать лучшее из вашего искусства:
- Показывайте только лучшие части своей работы.
- Не показывайте недоделанные углы окружения.
- Не используйте рендеры с низким разрешением или скриншоты.
- Используйте Movie Render Queue и настройки рендеринга для улучшения качества рендеринга в Unreal Engine.
- Конвертируйте свои рендеры в JPG. Это уменьшает размер изображения без потери качества и упрощает обмен файлами в интернете и загрузку на ArtStation.
Создание видео для личных проектов — это искусство само по себе. Я провёл несколько бессонных ночей, работая над демонстрационным роликом. Было очень весело монтировать видео и синхронизировать его с музыкой. Это сделало сцену по-настоящему живой и передало именно то настроение, которое я хотел. Весь монтаж видео был выполнен в DaVinci Resolve.
Самоанализ
Этот проект был для меня весёлым приключением с множеством трудностей на пути. Я чувствую, что мои навыки освещения улучшились, но ещё есть чему учиться, поэтому сейчас я читаю книгу о свете.
Весь процесс создания окружения занял у меня около пяти недель, что намного быстрее, чем в прошлый раз. Обратная связь, которую я получил на позднем этапе от сообществ художников в Discord, была чрезвычайно ценной — это помогло мне повысить визуальное качество сцены.
Совет моим коллегам-художникам: не недооценивайте важность любви к предмету вашего искусства. Будь то концепт-арт, ваша любимая игра, красивая среда, в которой вы побывали, или что-то, что вы делаете для студии, постарайтесь найти то, что вам в этом нравится. Иногда это может помочь вам преодолеть прокрастинацию и творческий застой.
Я надеюсь, что эта статья была вам полезна. Спасибо, что нашли время прочитать её. Если у вас остались вопросы, не стесняйтесь обращаться ко мне на ArtStation.
Cheers!
Михаил Хиневич, художник по окружению
Интервью проведено Глорией Левин Gloria Levine
Автор: Michael Khinevich