Моделирование и визуализация

В этом уроке я опишу теоретическую основу создания материала для стены из металлических плат. Для создания этого материала я буду использовать 3ds Max и Photoshop. Подобные материалы обычно применяются в компьютерных играх.

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

Мы начнем с простой плоскости. Эту простую форму мы будем усложнять с помощью нескольких уровней скоса (инструмент «Bevel»).

Вот базовая форма, как вы можете видеть, я в основном использовал углы в 45 градусов. Обычно я моделирую всю базовую модель, не используя группы сглаживания полигонов – так я лучше вижу что создаю. Постарайтесь не использовать при моделировании большие углы (более 45 градусов), так как этой геометрии не будет видно за плоской поверхностью.

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

Теперь все углы очень острые из-за того, что мы старались делать всё проще и не применять инструмент «Chamfer» (добавляет дополнительные ребра, или edge’ы). Теперь нам следует начать добавлять «поддерживающие ребра». Они представляют из себя ребра, которые находятся рядом с угловыми ребрам на каждой стороны угла.

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

Вот результат применения поддерживающих ребер к одному объекту (используется только одна сглаживающая группа полигонов):

Сейчас мы займемся созданием более маленьких деталей, чтобы сделать поверхность более интересной. Я создал несколько отдельных объектов, подходящих к нашей основной модели. Не буду описывать их создание – потребуется несколько операций «Bevel» и «Extrude» на их моделирование.

Заметьте, что у болта и квадратной ручки крайние ребра так выдавлены, чтобы получить гладкий переход по края (их нужно разместить как «флоатеры» – объекты, не прилегающие к основной модели).

Эти детали должны висеть в «воздухе». Всё может немного усложнится, если вам придется их размещать на какой-нибудь круглой модели при визуализации текстуры (функция «Render To Texture»). Но вы можете решить эту проблему, изменив дистанцию флоатера по отношению к основной модели. Так же можно визуализировать их отдельно и потом добавить к основной текстуре в Photoshop’е.

Вот как я разместил дополнительные детали:

Теперь нам нужно получить текстуру основной детали с эффектом «Ambient Occlusion», применив функцию «Render To Texture». Также нам потребуется карта нормалей. У визуализатора «Mental Ray» есть такая возможность, поэтому лучше использовать его. Обычно, перед тем, как начать визуализацию текстуры, я делаю несколько копий основного объекта и размещаю их с каждой стороны оригинала. Это делается для того, чтобы при визуализации текстуры (с эффектом «Ambient Occlusion»), края основного объекта были затемненными как у фрагмента стены.

Диффузная, отражающая и глянцевая текстуры.

Прежде всего, у нас теперь должна быть визуализированная текстура с эффектом «Ambient Occlusion». Она очень нам поможет в создании остальных текстур.

В Photoshop’е, создайте копию синего канала карты нормалей, увеличите контраст этого канала. Потом нажмите команду «Select->Color Range», выделите темные части текстуры, увеличите немного область выделения при помощи команды «Refine Edge», создайте новый слой и залейте белым цветом область выделения. Потом сделайте маску из не увеличенной области выделения.

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

Есть еще один способ (более легкий) создания карты с отчетливыми краями в Photoshop’е. Для этого вам понадобятся фильтры «xNormal» (программа бесплатная и её легко отыскать в Интернете), а именно фильтр «Normal2Cavity» (в меню фильтров найдите xNormal). Нужно применить этот фильтр к нашей карте нормалей. Я обычно использую метод «EMB» этого фильтра, потому как он извлекает информацию освещения (выпуклые ребра) и затемнения (впалые ребра) в два разных слоя.

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

Вот диалоговое окно фильтра «Normal2Cavity»:

Далее нужно начать набрасывать цвета в основном слое (самом нижнем) для диффузной текстуры:

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

Сейчас неплохо было бы добавить немного ржавчины и повреждений к краям. Для этого просто добавьте несколько слоев с подходящей текстурой, при помощи острой кисти (прозрачность 70-100%) замаскируйте не нужные детали. Для детализирующих текстур можете использовать любые фото (каких-нибудь поврежденных, поцарапанных поверхностей), для маски подойдет слой с картой краев (сделанная на основе карты нормалей) или текстура с эффектом «Ambient Occlusion» (полученная в 3ds Max’а).

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

Вот текстура повреждений и ржавчины, созданная при помощи описанной выше техники (использования заполняющих текстур или фотографий с применением масок):

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

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

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

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

Напоследок я сделал несколько больших скосов в карте нормалей, чтобы сделать части металла более неровными. Для этого вам потребуется создать новый слой, залитый черным или белым цветом, и нарисовать на нем несколько больших размытых капель в противоположном цвете. Можно еще использовать фильтр «Clouds» (находится в «Filters->Render») и размыть результат. Не забудьте, что нужно работать в 16-ти битовом цветовом режиме (меню «Image->Mode->16 Bits/Channel»), если вы хотите чтобы градиенты были гладкими. Когда закончите с деталями, то можете назад конвертировать изображение в 8 бит – гладкость градиентов сохранится.

Вот все четыре законченные текстуры для сравнения:

Применение текстур (используется материал «DirectX Shader» в 3ds Max):

Моделирование и визуализация

Подготовка материала металлической поверхности в 3ds Max и Photoshop
Подготовка материала металлической поверхности в 3ds Max и Photoshop
Предыдущая статья3ds Max. Моделирование и визуализация камней с V-Ray
Следующая статьяСоздание подводной сцены в 3ds Max