1 Уроки 3ds Max Создание текстиля с помощью процедурных текстур Вс Окт 03, 2010 9:12 am
Admin
Admin
Здравствуйте. Меня зовут Ярков Дмитрий. Я живу в городе Екатеринбурге и работаю моделлером и визулизатором на проекте DO ROOM. Я использую 3ds Max и VRay и сегодня хочу познакомить вас с созданием материала вот такой зеленой ткани:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
При создании материала будем использовать только процедурные карты. В процессе урока, я хочу рассказать не только о способах построения такого материала, но и описать, как грамотный визер должен смотреть на объект и уметь вычленять закономерности из кажущегося хаоса.
Поскольку создание материала тесно связано с освещением и рендером, придется сначала построить студию либо интерьер и настроить рендер. Я не буду подробно на этом останавливаться, но про гамму обязан рассказать, поскольку результирующие цвета будут напрямую зависеть от выбранной гаммы.
Я использую гамму 2,2. В общих чертах, она позволяет легче настроить теневые участки за счет смещения градаций светлости влево по шкале "черное-белое". Чтобы ее включить, зайдите в меню Customize->Preferences, перейдите на вкладку Gamma and LUT и поставьте настройки, как здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Отлично, подготовительные операции проведены. Теперь, прежде, чем открывать редактор материалов, следует внимательно рассмотреть картинку и определить, как именно материал наложен на объект. Итак, что мы видим? Основная масса ткани - темно-зеленая, даже ближе к голубой. На ней разбросаны вкрапления бледно-зеленых точек, которые и представляют наибольший интерес. Но точки разбросаны не в хаотичном порядке. Давайте попытаемся уловить закономерности в их расположении.
Во-первых, особо густые вкрапления точек идут вдоль краев объектов, особенно там, где поверхность вогнута и соприкасается с другой поверхностью (например, деревянными ножками). Точки там настолько близко расположены, что создают общую бледно-зеленую массу. По мере удаления от краев, плотность точек падает.
Во-вторых, на открытых и плоских участках поверхности точки тоже есть, но их плотность меньше и они гораздо бледнее.
Начнем создавать материал. Открываем редактор материалов и создаем материал VRayMtl. Щелкаем на слоте справа от Diffuse и добавляем в него карту VRayDirt.
Что делает эта карта - уже все, наверное, знают. Грубо говоря, она применяется для создания "грязи" в углах и по краям объекта, при этом реагирует на любые пересечения или просто близко расположенные объекты. Вот демонстрация ее использования:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, основной цвет объекта - серый, но в местах пересечения с другими объектами он меняется на красный. Во втором случае стоит галочка Invert Normals, поэтому все наоборот. Нам эта карта понадобится для уплотнения массива точек на краях объектов. Параметры поставьте, как на рисунке:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Radius - задает величину распространения "грязи" от краев объекта к его центру. 30 см не так уж много: большая часть этого расстояния скроется картой, которую мы наложим.
Subdivs - задает качество дирта. При низких значениях будет шуметь.
Задаем цвета Occluded Color и Unoccluded Color. Первый - это наши точки, он будет бледно-зелено-голубой. Второй - основная масса ткани, будет темно-зелено-голубая. Можно отрендерить.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Что мы видим? Карта VRayDirt послушно поменяла цвет объекта с краев. Но пока что все слишком ровно, и теперь мы должны наложить на нее карту, чтобы появилась желанная неоднородность.
Теперь пора снова взглянуть на фотографию. Мы видим, что существует как минимум два уровня масштаба неоднородности. Первый - это мелкие бледные точки, перемежающиеся с темной массой ткани. Второй - это более крупные темные пятна, словно бы стирающие любые точки на своем пути:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Двигаться следует от большего к меньшему. Начнем с больших темных пятен. Идем в слот Radius и кладем туда карту Mix. Это, я думаю, классическая всем известная карта, позволяющая смешивать два цвета/карты по черно-белой маске. Цвета оставляем по умолчанию (черный-белый). В качестве маски (слот Mix Amount) кладем процедурную карту Planet. Чем хороша эта карта: она содержит большое количество цветов (, которые можно весьма разнообразно смешивать. Вообще, эта карта, исходя из названия, предназначена для имитации поверхности планет из космоса: в ней есть три цвета для воды и пять цветов для материков и островов. Минус в том, что на эти цвета нельзя положить карты. Но мы обойдемся без них. Настройки ставим как у меня здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Поскольку текстура процедурная, настраивать UVWMap на объектах или делать развертку не нужно. Теперь возвращаемся к карте VRayDirt и снижаем процент влияния карты Mix до 97 (число справа от слота). Это позволит нам получить более четкую бледную полоску у границ объектов. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Вот, уже приятнее. Появилось хаотичное разделение на темные и белые пятна. Переходим к следующему уровню - мелким точкам, ради которых все и затеивалось. Кидаем во второй слот карту Stucco. Еще одна классическая процедурная карта, чередующая два цвета по особому алгоритму. Настройки ставим как у меня здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Настроек немного, поэтому разобраться легко. В нашем случае важными являются Size (размер текстуры) и Threshold (соотношение темных и светлых пятен). Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Какие симпатичные точечки! Но почему их нет с внешних краев объекта (например, подушек)? С этим разберемся позже. На этом заканчиваем работу со слотом Radius и возвращаемся в корень VRayDirt. Теперь попробуем несколько разнообразить эти пятна, а то они слишком уж однородные. Кидаем в слот Occluded Color карту Smoke. Суть та же, что и у Stucco, просто немножко другой алгоритм. В оба слота кидаем еще по такой же карте. Вот настройки всех трех:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, карта большего размера включает в себя две карты меньшего размера, с разным уровнем яркости. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
В целом стало чуть темнее, но это не беда - скоро исправим. Зато появилась дифференциация яркости, которую при желании можно усилить.
Давайте добавим белых пятен с внешних границ объектов. К счастью, это несложно. Возвращаемся на самый первый уровень материала, нажимаем правой кнопкой по VRayDirt и выбираем "Copy". Теперь переходим в этот VRayDirt, щелкаем правой кнопкой по единственному оставшемуся слоту Unocludded Color и жмем "Paste (Copy)":
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Настройки второго VRay Dirt оставляем такие же, только ставим дополнительную галочку Invert Normals. Это позволит добавить наших точек не только с внутренних, но и с внешних краев объекта. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Отлично! Количество точек возросло вдвое, а их суммарная яркость увеличилась. Теперь возвращаемся к описанию материала: "на открытых и плоских участках поверхности точки тоже есть, но их плотность меньше и они гораздо бледнее".
Ок, в нашем новом VRayDirt как раз для этого есть свободный слот Unocludded Color. Кидаем в него уже знакомую карту Mix с текстурой Planet. Параметр Continent Size меняем на 9,0 - пусть текстура будет в 4 раза больше предыдущей.
Первый цвет Mix делаем темно-зеленым, ну как основная ткань. Во второй слот кидаем Stucco, а в него - две Smoke с такими настройками:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Замечательно! У ярких массивов на фоне появились зеленые разводы. В целом, диффузная текстура выглядит теперь интересной и разнообразной. Вот как выглядит ее иерархия:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Одинаковыми цветами я выделил инстансные карты - две Mix и две Smoke. На этом с диффузной текстурой закончим.
Переходим в корень нашего материала. Не забудьте сохраниться - не дай бог, вылетит. Приступим к бампу. В принципе, ничего сложного в нем нет. Просто копируем нашу карту из слота Diffuse в слот Bump (методом Copy!) и делаем все встречающиеся цвета в нем черно-белыми (просто понижаем до нуля Saturation) - для большего контроля. Самые темные цвета (основная масса ткани) я сделал полностью черными, но это необязательно.
Возвращаемся в корень материала - теперь сделаем отражение. Не следует им пренебрегать - даже самый матовый материал отражает свет. Кирпич, бумага, ткань - любая поверхность. Вопрос только в силе отражения и его размытии. В нашем случае отражение очень размытое, да так, что собственно отражения и нет - остается только блик от источников света. Для таких случаев я применяю фейк. Идем во вкладку Options и отключаем параметр Trace Reflections. Теперь можно сколько угодно повышать силу отражения - его не будет, а вот блик останется:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Копируем нашу карту - на этот раз из бампа в рефлект. И тут нужно внимательно следить за цветами. Наше отражение зеленоватое, и оно должно быть контрастным. Первым делом отключите карту Unoccluded Color у последнего VRayDirt и поставьте вместо нее черный цвет - нам не нужно бликов на фоне. Осталось поменять только карты Smoke на Occluded Color обеих VRayDirt. Если вы еще не сделали их инстансными, сделайте сейчас: скопируйте Smoke с одного VrayDirt и вставьте в другой методом Paste (Instance). Теперь измените цвета карт на следующие:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, яркие зеленые цвета чередуются с полностью черными. В итоге получится контрастное отражение. Идем в корень материала и меняем параметр Refl. glossiness на 0.64 - сильно размытый блик. Финальный рендер!
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Яркость пятен, попавших в зону блика, сильно увеличилась - хороший плюс к интересности материала! Материал ножек сделан по схожему принципу, останавливаться на нем не будем.
Итоговая иерархия материала:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
В итоге получился достаточно сложный материал без единой растровой текстуры. Использование процедурных карт - большой плюс. Во-первых, это полная независимость от размера текстуры: процедурные карты не имеют пикселизации. Во-вторых, это отсутствие необходимости делать развертку. В-третьих, это очень гибкая система: можно в любой момент добавить более мелкие и более крупные детали на любом уровне детализации. Кроме того, наш материал очень легкий в изменении цвета. Достаточно лишь ввести новое значение Hue (Оттенок) в каждой ячейке - и новый цвет готов. Также можно контролировать цвета каждого уровня детализации. При желании, можно сделать их еще более неоднородными.
Результирующий материал можно скачать здесь.
Всем спасибо]
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
При создании материала будем использовать только процедурные карты. В процессе урока, я хочу рассказать не только о способах построения такого материала, но и описать, как грамотный визер должен смотреть на объект и уметь вычленять закономерности из кажущегося хаоса.
Поскольку создание материала тесно связано с освещением и рендером, придется сначала построить студию либо интерьер и настроить рендер. Я не буду подробно на этом останавливаться, но про гамму обязан рассказать, поскольку результирующие цвета будут напрямую зависеть от выбранной гаммы.
Я использую гамму 2,2. В общих чертах, она позволяет легче настроить теневые участки за счет смещения градаций светлости влево по шкале "черное-белое". Чтобы ее включить, зайдите в меню Customize->Preferences, перейдите на вкладку Gamma and LUT и поставьте настройки, как здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Отлично, подготовительные операции проведены. Теперь, прежде, чем открывать редактор материалов, следует внимательно рассмотреть картинку и определить, как именно материал наложен на объект. Итак, что мы видим? Основная масса ткани - темно-зеленая, даже ближе к голубой. На ней разбросаны вкрапления бледно-зеленых точек, которые и представляют наибольший интерес. Но точки разбросаны не в хаотичном порядке. Давайте попытаемся уловить закономерности в их расположении.
Во-первых, особо густые вкрапления точек идут вдоль краев объектов, особенно там, где поверхность вогнута и соприкасается с другой поверхностью (например, деревянными ножками). Точки там настолько близко расположены, что создают общую бледно-зеленую массу. По мере удаления от краев, плотность точек падает.
Во-вторых, на открытых и плоских участках поверхности точки тоже есть, но их плотность меньше и они гораздо бледнее.
Начнем создавать материал. Открываем редактор материалов и создаем материал VRayMtl. Щелкаем на слоте справа от Diffuse и добавляем в него карту VRayDirt.
Что делает эта карта - уже все, наверное, знают. Грубо говоря, она применяется для создания "грязи" в углах и по краям объекта, при этом реагирует на любые пересечения или просто близко расположенные объекты. Вот демонстрация ее использования:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, основной цвет объекта - серый, но в местах пересечения с другими объектами он меняется на красный. Во втором случае стоит галочка Invert Normals, поэтому все наоборот. Нам эта карта понадобится для уплотнения массива точек на краях объектов. Параметры поставьте, как на рисунке:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Radius - задает величину распространения "грязи" от краев объекта к его центру. 30 см не так уж много: большая часть этого расстояния скроется картой, которую мы наложим.
Subdivs - задает качество дирта. При низких значениях будет шуметь.
Задаем цвета Occluded Color и Unoccluded Color. Первый - это наши точки, он будет бледно-зелено-голубой. Второй - основная масса ткани, будет темно-зелено-голубая. Можно отрендерить.
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Что мы видим? Карта VRayDirt послушно поменяла цвет объекта с краев. Но пока что все слишком ровно, и теперь мы должны наложить на нее карту, чтобы появилась желанная неоднородность.
Теперь пора снова взглянуть на фотографию. Мы видим, что существует как минимум два уровня масштаба неоднородности. Первый - это мелкие бледные точки, перемежающиеся с темной массой ткани. Второй - это более крупные темные пятна, словно бы стирающие любые точки на своем пути:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Двигаться следует от большего к меньшему. Начнем с больших темных пятен. Идем в слот Radius и кладем туда карту Mix. Это, я думаю, классическая всем известная карта, позволяющая смешивать два цвета/карты по черно-белой маске. Цвета оставляем по умолчанию (черный-белый). В качестве маски (слот Mix Amount) кладем процедурную карту Planet. Чем хороша эта карта: она содержит большое количество цветов (, которые можно весьма разнообразно смешивать. Вообще, эта карта, исходя из названия, предназначена для имитации поверхности планет из космоса: в ней есть три цвета для воды и пять цветов для материков и островов. Минус в том, что на эти цвета нельзя положить карты. Но мы обойдемся без них. Настройки ставим как у меня здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Поскольку текстура процедурная, настраивать UVWMap на объектах или делать развертку не нужно. Теперь возвращаемся к карте VRayDirt и снижаем процент влияния карты Mix до 97 (число справа от слота). Это позволит нам получить более четкую бледную полоску у границ объектов. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Вот, уже приятнее. Появилось хаотичное разделение на темные и белые пятна. Переходим к следующему уровню - мелким точкам, ради которых все и затеивалось. Кидаем во второй слот карту Stucco. Еще одна классическая процедурная карта, чередующая два цвета по особому алгоритму. Настройки ставим как у меня здесь:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Настроек немного, поэтому разобраться легко. В нашем случае важными являются Size (размер текстуры) и Threshold (соотношение темных и светлых пятен). Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Какие симпатичные точечки! Но почему их нет с внешних краев объекта (например, подушек)? С этим разберемся позже. На этом заканчиваем работу со слотом Radius и возвращаемся в корень VRayDirt. Теперь попробуем несколько разнообразить эти пятна, а то они слишком уж однородные. Кидаем в слот Occluded Color карту Smoke. Суть та же, что и у Stucco, просто немножко другой алгоритм. В оба слота кидаем еще по такой же карте. Вот настройки всех трех:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, карта большего размера включает в себя две карты меньшего размера, с разным уровнем яркости. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
В целом стало чуть темнее, но это не беда - скоро исправим. Зато появилась дифференциация яркости, которую при желании можно усилить.
Давайте добавим белых пятен с внешних границ объектов. К счастью, это несложно. Возвращаемся на самый первый уровень материала, нажимаем правой кнопкой по VRayDirt и выбираем "Copy". Теперь переходим в этот VRayDirt, щелкаем правой кнопкой по единственному оставшемуся слоту Unocludded Color и жмем "Paste (Copy)":
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Настройки второго VRay Dirt оставляем такие же, только ставим дополнительную галочку Invert Normals. Это позволит добавить наших точек не только с внутренних, но и с внешних краев объекта. Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Отлично! Количество точек возросло вдвое, а их суммарная яркость увеличилась. Теперь возвращаемся к описанию материала: "на открытых и плоских участках поверхности точки тоже есть, но их плотность меньше и они гораздо бледнее".
Ок, в нашем новом VRayDirt как раз для этого есть свободный слот Unocludded Color. Кидаем в него уже знакомую карту Mix с текстурой Planet. Параметр Continent Size меняем на 9,0 - пусть текстура будет в 4 раза больше предыдущей.
Первый цвет Mix делаем темно-зеленым, ну как основная ткань. Во второй слот кидаем Stucco, а в него - две Smoke с такими настройками:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Рендерим:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Замечательно! У ярких массивов на фоне появились зеленые разводы. В целом, диффузная текстура выглядит теперь интересной и разнообразной. Вот как выглядит ее иерархия:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Одинаковыми цветами я выделил инстансные карты - две Mix и две Smoke. На этом с диффузной текстурой закончим.
Переходим в корень нашего материала. Не забудьте сохраниться - не дай бог, вылетит. Приступим к бампу. В принципе, ничего сложного в нем нет. Просто копируем нашу карту из слота Diffuse в слот Bump (методом Copy!) и делаем все встречающиеся цвета в нем черно-белыми (просто понижаем до нуля Saturation) - для большего контроля. Самые темные цвета (основная масса ткани) я сделал полностью черными, но это необязательно.
Возвращаемся в корень материала - теперь сделаем отражение. Не следует им пренебрегать - даже самый матовый материал отражает свет. Кирпич, бумага, ткань - любая поверхность. Вопрос только в силе отражения и его размытии. В нашем случае отражение очень размытое, да так, что собственно отражения и нет - остается только блик от источников света. Для таких случаев я применяю фейк. Идем во вкладку Options и отключаем параметр Trace Reflections. Теперь можно сколько угодно повышать силу отражения - его не будет, а вот блик останется:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Копируем нашу карту - на этот раз из бампа в рефлект. И тут нужно внимательно следить за цветами. Наше отражение зеленоватое, и оно должно быть контрастным. Первым делом отключите карту Unoccluded Color у последнего VRayDirt и поставьте вместо нее черный цвет - нам не нужно бликов на фоне. Осталось поменять только карты Smoke на Occluded Color обеих VRayDirt. Если вы еще не сделали их инстансными, сделайте сейчас: скопируйте Smoke с одного VrayDirt и вставьте в другой методом Paste (Instance). Теперь измените цвета карт на следующие:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Как видите, яркие зеленые цвета чередуются с полностью черными. В итоге получится контрастное отражение. Идем в корень материала и меняем параметр Refl. glossiness на 0.64 - сильно размытый блик. Финальный рендер!
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
Яркость пятен, попавших в зону блика, сильно увеличилась - хороший плюс к интересности материала! Материал ножек сделан по схожему принципу, останавливаться на нем не будем.
Итоговая иерархия материала:
[Вы должны быть зарегистрированы и подключены, чтобы видеть это изображение]
В итоге получился достаточно сложный материал без единой растровой текстуры. Использование процедурных карт - большой плюс. Во-первых, это полная независимость от размера текстуры: процедурные карты не имеют пикселизации. Во-вторых, это отсутствие необходимости делать развертку. В-третьих, это очень гибкая система: можно в любой момент добавить более мелкие и более крупные детали на любом уровне детализации. Кроме того, наш материал очень легкий в изменении цвета. Достаточно лишь ввести новое значение Hue (Оттенок) в каждой ячейке - и новый цвет готов. Также можно контролировать цвета каждого уровня детализации. При желании, можно сделать их еще более неоднородными.
Результирующий материал можно скачать здесь.
Всем спасибо]