Реалистичная ткань без текстур в Corona Renderer

Реалистичная ткань без текстур в Corona Renderer

Реалистичный материал для интерьерной визуализации проще всего получить из текстур высокого качества, созданных, например, через 3D сканирование. На поиск, покупку или создание таких текстур уходят внушительные деньги и много времени, а итоговый рендер потребует большого объема оперативной памяти. Чем больше таких материалов в сцене, тем требовательней Corona Renderer становится к компьютеру. Однако многие материалы совсем не обязательно делать через текстуры — отличный результат получится и при использовании стандартных параметрических карт 3ds MAX и Corona Renderer. Лучше всего они подходят для объектов на заднем плане или предметов без ручных разверток. Рассмотрим создание параметрических материалов на примере обычной ткани.

Материалы в Corona отличаются тем, как они отражают падающий на них свет; это контролируют параметры Reflection Glossiness и Fresnel IOR. Ткани, такие как сатин, шелк или бархат, почти не отражают свет напрямую, но ощутимо засвечиваются на пиках складок. Симулировать такой эффект можно при помощи карты Falloff, доступной в 3ds MAX по умолчанию. Эту карту можно использовать для Reflection, но мы соберем материал полностью через слот Diffuse.

Эта статья для новичков, которые уже что-то знают об интерфейсе 3ds MAX, моделировании, модификаторах и работе с материалами. Формат урока — пошаговая инструкция: мы не будем объяснять функции всех кнопок, но покажем нужные и используемые.

Основные настройки материала ткани

Разберемся, что именно делает карта Falloff, и почему мы используем её. Создаем новый материал CoronaMtl, из раздела General выбираем карту Falloff и подаем ее на слот Diffuse. Назначаем материал на тестовый объект, не меняя настроек, чтобы оценить первоначальный результат. В зависимости от объекта, эффект может отличаться, но основной принцип сохраняется: когда камера прямо смотрит на участок поверхности, он окрашивается темнее, а когда под углом — светлее. Поэтому на нашей модели ткани (созданной через модификатор Cloth), цвет становится почти белым на краях.

 

Чтобы повысить реалистичность эффекта, изменим форму Mix Curve в настройках Falloff. Переведите крайние точки в Bezier-Corner через выпадающее меню нажатием правой кнопки мыши. Потянув за появившиеся лучи, сделайте кривую более вогнутой и плавной. Теперь зададим ткани цвет. Это можно делать прямо в настройках Falloff, но для наглядности зададим цвет через ColorMap (доступна в Maps → General начиная с 3ds MAX 2017).

Ткань уже напоминает сатин, и её можно использовать для предметов на дальнем плане. Если вам не нравится размер и/или яркость засветов, изменяйте форму кривой. Не бойтесь экспериментировать. Ниже представлены еще два варианта настроек.



Усложняем и повышаем реалистичность

Повысим реалистичность этой ткани, добавив в неё шума. Это симулирует неравномерность цвета любого настоящего объекта. Добавьте между Falloff и CoronaMtl карту Composite и карту CoronaColorCorrect. Заводим Falloff на первый слой в Composite и создаем еще один слой. На вход CCC подключаем Falloff, повышаем гамму до 1,4-1,5 и заводим результат на второй слой Composite. Наконец, в слот Layer 2 (Mask) подаем процедурную карту Cellular и в её настройках выставляем Size = 1. Таким образом по темному материалу теперь будут разбросаны более светлые точки. Если кажется, что эффект не заметен, изменяйте значение Size или попробуйте подставлять разные размеры в Cell Characteristic. Лучше не использовать интерактивный рендер, так как шум будет перебивать результат. Вместо этого рендерите небольшой регион, чтобы быстро получить корректное превью.


Помимо мелкого шума на тканях появляются и большие затемнения при использовании. Обычно, это крупные темные участки, остающиеся после касаний. Создадим похожий эффект при помощи процедурной карты Smoke. Так же, как и до этого, смешиваем через Composite промежуточный материал на первом слое с CoronaColorCorrect на втором слое. В настройках CCC делаем Brightness = 0,2 (значение можно увеличивать и уменьшать, чтобы изменить заметность эффекта). В карте Smoke (доступна там же, Maps → General) меняем местами цвета и выставляем Size = 100, и подаем её на вход Layer 2 (Mask). Теперь, перебирая разные размеры карты и яркость CCC, подбираем желаемый эффект.

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

Ниже представлена полная структура материала ткани:



Несколько идей для рельефности

Обычно для тканей в Bump подают карту из слота Diffuse, переведенную в черно-белый режим. У нашего материала выраженного рельефа нет, так что мы можем создать его с нуля. Например, процедурная карта Checker станет похожа на волокно, если выставить одно из значений в столбце Tiling в несколько раз выше другого. Главное подобрать масштаб всей текстуры, а затем подать её на вход Bump с высотой 0,2-0,4.

В Cheker легко добавить хаотичности через подраздел Noise. Пробуйте разные значения Amount, Levels и Size.

Чтобы увидеть промежуточный результат, нажмите правой кнопкой мыши на элемент в Material Editor и выберите Open Preview Window. Растяните появившееся окно, и текстура станет более различимой.


И, наконец, карту Checker стоит смешать с картой Noise (или с любой другой процедурной) через Composite, но вместо маски задать второму слою свойство Multiply. Экспериментируйте: инвертируйте или меняйте яркость и контрастность карт через CoronaColorCorrect, подбирайте размеры и силу шума.



Сложные материалы незаменимы при рендере изображений большого размера. Отсюда и потребность в тяжелых текстурах и повышенном реализме. Однако широкоформатный рендер — это не обязательно долго. Запустите свой проект в онлайн-сервисе Мегарендер, и он будет рендерится на мощнейших серверах и в несколько раз быстрее, чем на обычном компьютере. Рассчитайте стоимость на нашем калькуляторе и экономьте своё время уже сегодня!