[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } } ] { "gtm": "GTM-NDH47H" }
{ "author_name": "Глеб Диденко", "author_type": "self", "tags": ["\u0430\u0440\u0442","\u043e\u043f\u044b\u0442"], "comments": 2, "likes": 24, "favorites": 12, "is_advertisement": false, "section": "pro" }
1 837
Gamedev

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

Материалы, модели и освещение безлюдных китайских аллей.

Поделиться

В избранное

В избранном

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, создавать итерации в реальном времени и экономить усилия.

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

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

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

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

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

Освещение

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

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

Красный цвет — свет, зелёный — тени

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

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

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

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

#арт #опыт

Популярные материалы
Показать еще
{ "is_needs_advanced_access": false }

Комментарии Комм.

Популярные

По порядку

Прямой эфир

Узнавайте первым важные новости

Подписаться