Материалы, модели и освещение безлюдных китайских аллей.3D-художник из Израиля Томер Мельцер (Tomer Meltser) рассказал порталу 80.lv, как он создавал освещение, материалы и архитектуру для окружения китайского города-крепости Коулун. DTF публикует перевод статьи.Я заинтересовался компьютерной графикой около 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), которую можно использовать как маску, чтобы упростить смешение дополнительных текстур или наложенных поверх деталей.Базовое VP, базовое VP с маской, материал стены, использующий VP для вариацийНастройки шейдера для базового раскрашивания вершин, использованные для тестирования и изученияСама по себе маска создаёт очень ненатуральные перепады от вершины к вершине (что заметно на меше слева). Чтобы предотвратить это, я использовал раскрашивание вершин поверх тайловой grunge-карты.Я решил добавить такие важные функции в финальную версию материала окраски граней: контроль карты высот, чтобы текстура сначала как бы разливалась по неровностям поверхности, возможность использовать любую grunge-карту для маски затухания, контроль интенсивности эффекта раскрашивания вершин и возможность отдельно управлять цветом и жёсткостью на каждом из RGBA-каналов.Использование главного материала (master material) позволило мне менять внешний вид любых материалов без необходимости возвращения в Photoshop и dDo, создавать итерации в реальном времени и экономить усилия.Для особых эффектов вроде ветра, мерцания неона и луж воды я сделал материалы с уникальными настройками, а раскрашивание вершин помогло контролировать расположение этих эффектов на меше. Использование ToolbagMarmoset Toolbag была полезна для тестирования ассетов до полной готовности материалов в Unreal. Все «запечённые» элементы были приготовлены с помощью MightyBake, подтвердившей своё быстродействие. Возможно, когда-нибудь я попробую «запекать» в Marmoset Toolbag, чтобы сравнить их производительность.Я заранее знал, — неоновые вывески будут играть в сцене важную роль. Каждая из них создавалась из полигональных полосок (polygon stripes), следовавших контуру, экспортированному из Photoshop. UV-преобразованием они подгонялись к неону (neon trim) в моём «листе отделки» (trimsheet).Я пробовал разные цветовые схемы неона вплоть до получения нужного вида. Эффекта мерцания и перегоревших частей удалось добиться с помощью раскрашивания вершин.ОсвещениеКогда большая часть ассетов и материалов была готова, я решил передалать освещение с нуля. На сцену было просто тяжело смотреть — слишком яркой и насыщенной она получилась. Отличный совет я получил от Клинтона Крампера (и, полгода спустя, от Пьера Бурже) — добавить к сцене чёрно-белый фильтр и корректировать освещение в оттенках серого. Это помогло очень ясно и быстро принимать решения о ключевых моментах сцены и акцентировать их световыми элементами.Красный цвет — свет, зелёный — тениОпределившись с интенсивностью света, я подкорректировал цвета, чтобы приблизиться к изначально придуманной палитре. В работе фотографа Масаши Вакуи (Masashi Wakui) меня вдохновлял контраст между тёплыми и холодными тонами. Я хотел добиться подобного эффекта и в своей сцене.Поскольку фонари я уже создал, было логично сделать их источниками мягкого света, а остальные — холодного, светло-синего оттенка. Я активно использовал конусы света, чтобы связать направления его источников в дополнение к атмосферному туману, добавляющему зеленоватый цвет. Даже когда окружение полностью меня устраивало, оставалось множество вещей, которые можно было сделать лучше. Думаю, сильные и слабые стороны художника — это возможные точки роста. Они помогают понять, на чём сфокусироваться в учёбе.#арт #опыт #long
«плиточная»Просто "тайловая". Так понятнее.
Учтём пожелание.