Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Города-башни у океана, в которых незаметны типовые модели.

Дезмонд Мэн (Desmond Man), художник из Sumo Digital, объяснил на портале 80.lv, как создать впечатляющую 3D-сцену на Unreal Engine 4, избегая визуальной повторяемости элементов.

Мы пересказали материал.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Начало проекта

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

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

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

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

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

Когда всё было спланировано, он начал блокировать (blocking) всё в 3ds Max с намерением как можно скорее перенести блокаут на Unreal Engine 4. Самой важной частью этой фазы Мэн считает создание правильного соотношения размеров объектов. В UE4 гораздо проще понять, как игрок будет чувствовать себя в создаваемой сцене.

Мэн старался довести самые крупные элементы до «предполировочной» стадии как можно быстрее, и понять, сколько времени будет на остальную часть проекта.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Башня

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

Для определения масштаба, сначала художник попытался понять, насколько велик мост с картинки. Затем сделал его блокаут в том же месте, что и на арте. После этого Мэн добавил в сцену параллелепипед 60х60х180 — образец размеров человека — и стал перемещать его по сцене, чтобы понять, где масштаб выставлен правильно.

Он сравнивал части сцены друг с другом — например, этажи строений высотой 3-4 метра (300-400 юнитов) — и использовал полученные значения как основу измерений на стадии блокаута. Однако были моменты, когда приходилось делать всё на глаз. Например, во время создания бетонной оболочки башни, фрагментированных частей, металлического покрытия панелей и так далее.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Текстурирование оказалось нелёгкой задачей: пришлось потратить много времени на шейдер материалов.

Существует распространённая проблема, с которой сталкиваются все художники по окружению: как избежать заметного повторения элементов? Поскольку сгенерировать отдельный уникальный материал непросто, особенно когда его нужно тайлить 10-20 раз, Мэн придумал такое соотношение:

Множественные наборы текстур на одну маску/декали поверхности/оформление пропов.

С такой комбинацией элементов повторяемость в крупных зонах не так заметна, хотя есть и другие трюки вроде моделирования в геометрию и изменения развёрток.

Шейдер использовал RGB-маску в качестве второго UV-канала — так работал блендинг цвета вершин, с помощью которого Мэн текстурировал отдельные части башни. Финальный мастер-материал задавал такую модель: всё с чёрным цветом вершин использует текстуру «А», с красным — текстуру «В», с зелёным — текстуру «С», а синий был рабочим цветом для добавления на поверхность грязи.

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

Есть и другие способы, но этот особенно подошёл для Мэна, поскольку ему нужно было работать быстро, а для этого метода не нужно создавать много компонентов.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Террасы

Очень много времени ушло на город внутри. Мэн создал 3-4-этажное модульное строение с методом текстурирования как у башни. Этот модульный ассет можно было вращать в любую сторону и менять как угодно.

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Чтобы сделать этот ассет более гибким, Мэн создал отдельные ID материалов для каждого блока — так можно было менять материалы для создания разнообразия цветов и более плавных переходов от одного типа поверхности к другому.

Он придавал строениям «потасканный» облик, накладывая поверх них геометрический объект с текстурой гипса без альфа-канала. Этим же методом он пользовался, убирая острые углы на гранях строений.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

После того, как сегменты строений были закончены, Мэн, основываясь на их облике, создал остальные ассеты — например, деревянные мостики, лестницы и навесы.

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Субстанции

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

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

Хотя многие тайловые текстуры он создавал в Substance Designer, всё равно приходилось «играть» с геометрией, выжимая из них максимум. Например, металлическая пластина наверху башни состоит из одной субстанции. Мэн применил тайловую текстуру к пластине, которую затем разрезал на несколько ассетов, чтобы их можно было размножить и использовать в разных местах башни. Оставалось только сделать дополнительные ассеты: панели должны были выглядеть так, будто вот-вот отвалятся.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

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

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

В качестве примера того, как он делал субстанции, Мэн приводит бетонные блоки.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

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

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

Освещение

Свет был очень простым. Мэн использовал динамическое освещение, чтобы не пришлось создавать его карту для каждого ассета. Также он решил активировать Light Propagation Volumes — так результат выглядел интереснее. Кроме того, в небесном свете используются кубические карты, и одна или две сферы захвата для кинематографичных эффектов. Всего в этой сцене задействовано 6-7 источников света, 8-12 сфер захвата и одна поверхность захвата отражений для океана.

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

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Добавляя движение

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

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Эффективность

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

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

Больше всего времени Мэну сэкономил Substance Painter, особенно на стадии работы с высокополигональными моделями. Художник считает, что хотя эта стадия очень важна, в условиях приближающегося дедлайна ею можно пренебречь. Он смог создать ассеты высокого качества с использованием кастомизированных нормалей на низкополигональной неразвёрнутой геометрии и ручной отрисовкой детализации высот. Так получилось сэкономить много времени.

Также Мэн рекомендует работать модульно и не пытаться делать уникальные ассеты для всего подряд.

На этом изображении видно, сколько в созданной сцене геометрии.

Не бойтесь повторяться: как сделать похожие элементы в 3D-сцене уникальными

Конечный результат:

2121
15 комментариев

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

3
Ответить

После перевода приходится читать оригинал.Так всегда....

1
Ответить

Какие именно? Давайте сделаем список и постараемся оптимизировать, чтобы всем было удобно.

Ответить

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

2
Ответить

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

1
Ответить

Или хоть как-то прикрутить доступ к хай-ресу. А то сейчас долгим тапом только лоу открывается.

Ответить

Платинум геймс бы эту статью почитать. От тайлинга текстур в ниер глаза вытекают

Ответить