Пустынный город: моделирование переулков Гонконга

3D-художник из Израиля Томер Мельцер (Tomer Meltser)рассказалпорталу 80.lv, как он создавал освещение, материалы и архитектуру для окружения китайского города-крепости Коулун.

Я заинтересовался компьютерной графикой около 12 лет назад, когда открыл для себя сообщество DeviantArt. После я пробовал силы в программах вроде Bryce и Terragen, но в определённый момент увидел Maya, и с тех пор не переставал её изучать. За прошедшие годы я узнал многое о 3D-моделировании и рендеринге (в основном для собственного развлечения).

В последние два-три года я решил серьёзно заняться артом и начал с поступления в Израильский колледж анимации (Israeli Animation College, IAC).

Во время обучения выбрал специализацию — игровое окружение. Моим выпускным проектом стала 3D-диорама, основанная на фантастических работах Саймона Сталенхага (Simon Stalenhag).

После окончания колледжа я почувствовал, что нужно продолжать изучать дизайн окружения, и записался на уроки от Клинтона Крамплера (Clinton Crumpler). Их структурированность и подробный разбор рабочего процесса помогли мне узнать множество неочевидных приёмов. Тогда я и завершил сцену города-крепости Коулун.

Коулун

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

Было выбрано «жутковатое, но притягательное» настроение. Я сильно вдохновился изображениями города-крепости Коулуна, которые помогли мне задать желаемую историю и настроение.

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

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

До создания каркасов базовых моделей сцены (block out) я создал небольшую «доску» в Trello, чтобы чётче структурировать мысли и референсы. Последние были разделены на модели, материалы, элементы архитектуры и освещение. Я старался брать только то, что идеально подходило придуманной истории.

Начало

Первый шаг — определиться со «слепком» окружения. Я должен был «подогнать» размеры модульных ассетов под минимальную заданную меру измерения. Подобный подход позволил мне быстро и легко делать прототипы каркасов базовых моделей окружения в Maya, и так же без труда переносить её в Unreal.

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

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

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

Таким образом проверялись возможные проблемы набора: например, неверная стыковка или странные зазоры между модулями.

Меши

Я разделил все наброски моделей на три группы: уникальные, «плиточные» (tileables) и гибридные.

Уникальные меши создавались высокополигональными, потом «запекались» и текстурировались в Quixel dDo. Это очень долгий метод и я старался аккуратнее выбирать ассеты, к которым его применить.

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

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

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

Для «плиточных» мешей я создал два «листа отделки» (trimsheets), повторяющихся в обоих направлениях.

Прежде всего я внимательно изучил референсы и нашёл повторяющиеся детали. После этого я продолжил простым цветным наброском в Photoshop, перенёс его в Maya, смоделировал, «запёк» с помощью MightyBake и затекстурировал в dDo.

Чтобы избежать несоответствий, я убедился, что «отделка» правильно привязывается к сетке 10x10.

Больше всего сил ушло на несколько уникальных ассетов в сцене, а окна, стены и прочие структуры — «плиточные».

Моделирование и текстурирование всех основных ассетов заняло три месяца, ещё месяц потребовался на полировку и подготовку проекта к завершению.

Материалы

В основном я работал в Quixel dDo, изредка запуская Substance Designer. Обе программы я использовал, например, для текстуры стены, поскольку хотел получить определённый шаблон, паттерн рисунка, который не так просто создать только в dDo.

Земля полностью сделана в dDo.

Во время текстурирования я ищу разумное количество референсов, создаю основные формы или паттерны и разрабатываю цветовые вариации.

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

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

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

На протяжении всего проекта я активно использовал Deferred Decals в Unreal, чтобы в окружение лучше «вмешивались» граффити, грязь, расколы и трещины. Это помогает придать разнообразия плоским «плиточным» ассетам. Я создал базовый шейдер декалей, с помощью которого у меня появилась возможность добавлять простые карты альфа-канала и цвета, либо сложные карты текстур и нормалей.

Один из недостатков плиточных текстур — в наборе функций раскрашивания вершин (VP) Unreal.

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

Сама по себе маска создаёт очень ненатуральные перепады от вершины к вершине (что заметно на меше слева). Чтобы предотвратить это, я использовал раскрашивание вершин поверх «плиточной» grunge-карты.

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

Использование главного материала (master material) позволило мне менять внешний вид любых материалов без необходимости возвращения в Photoshop и dDo, создавать итерации в реальном времени и экономить усилия.

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

Использование Toolbag

Marmoset Toolbag была полезна для тестирования ассетов до полной готовности материалов в Unreal. Все «запечённые» элементы были приготовлены с помощью MightyBake, подтвердившей своё быстродействие. Возможно, когда-нибудь я попробую «запекать» в Marmoset Toolbag, чтобы сравнить их производительность.

Я заранее знал, — неоновые вывески будут играть в сцене важную роль. Каждая из них создавалась из полигональных полосок (polygon stripes), следовавших контуру, экспортированному из Photoshop. UV-преобразованием они подгонялись к неону (neon trim) в моём «листе отделки» (trimsheet).

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

Освещение

Когда большая часть ассетов и материалов была готова, я решил передалать освещение с нуля. На сцену было просто тяжело смотреть — слишком яркой и насыщенной она получилась. Отличный совет я получил от Клинтона Крампера (и, полгода спустя, от Пьера Бурже) — добавить к сцене чёрно-белый фильтр и корректировать освещение в оттенках серого.

Это помогло очень ясно и быстро принимать решения о ключевых моментах сцены и акцентировать их световыми элементами.

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

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

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

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

Нравится12
Комментарии (2)
  • 6
    Прочитав это раза 2, я наконец пришёл к выводу что человек потратил огромную кучу времени, что бы овладеть такими навыками, и очень впечатляющими !!!
    Наверное я был бы не одни рад, если бы такие дизайнеры были бы в играх которые заслуживают это !!
    (Но можно ли называть его дизайнером, в то время когда он занимается полностью всем один...)
  • 0
    WeedJaeger
    В инете полно самоделкиных на UE, которых было бы неплохо в геймдев пустить. Хотя разработчики крупных игр те ещё жмоты, и даже сам движок не используют (а он в данном аспекте очень многое значит).
    Вот например очень хорошая работа:
B
i
u
Спойлер