Создаём материал стекла в Substance Painter и Marmoset
Всем привет, это Антон Агеев — автор курса “Процедурный трип”. На нём я учу создавать процедурные текстуры на профессиональном уровне.
Один из самых популярных вопросов от студентов — как создать и настроить материал прозрачного стекла?
В прошлый раз я рассказал о создании материала бетона в Substance Designer, а в этом гайде покажу, как делать стекло в Substance Painter — на примере модели будильника.
Стекло — непростой материал, потому что единого способа его сделать нет. В каждой программе оно настраивается по-разному, и поэтому часто возникает путаница.
В статье два раздела: о создании текстуры в Substance Painter, и о её импорте и настройке в Marmoset. Методику из второго раздела я частично заимствую из материала художника Ognyan Zahariev.
Substance Painter
В моём проекте у модели два текстурных сета — для корпуса и для стекла будильника. Каждый текстурный сет использует свой шейдер, потому что в материале стекла нужна прозрачность, а в корпусе нет.
Создание шейдера
Чтобы создать новый шейдер текстурного сета стекла, нажимаем на Main Shader в Texture Set List:
Переименуем его в разделе Shader Settings:
Сменим типа шейдера на pbr-metal-rough-alpha blending:
В SP 2 типа прозрачности: alpha-blending и alpha-test.
- В Alpha-test нет градаций. Пиксель либо полностью прозрачный, либо нет. Этот тип подходит, когда нужна жёсткая маска, — например, текстура листьев. Это более “дешёвая” альфа с точки зрения производительности.
- Alpha-blending более “тяжёлый”, он поддерживает степень прозрачности и подойдёт для стекла.
Канал Opacity
После настройки шейдера добавим новый канал — opacity — в текстурный сет стекла.
Он управляет прозрачностью в материале с помощью чёрно-белой текстуры. Чем темнее пиксель, тем он прозрачнее на модели, и наоборот.
Для оптимизации процесса уберём каналы Metallic, Normal и AO из текстурного сета.
Базовый слой
Создадим первый слой — обычный Fill Layer с базовым значением Roughness и цветом непрозрачности.
По мере загрязнения, ближе к краям, стекло будет становиться непрозрачным. Цвет в канале BaseColor в этом слое позволит настроить его оттенок.
Roughness
Создаём детализацию в канале Roughness, отключаем все остальные. Значение Roughness в слое выставляем на 1.
Теперь добавляем маску для слоя.
- Создаем процедурную текстуру Scratches generator.
Настраиваем её так, чтобы было похоже на царапины на стекле — тонкие и прямые. Уменьшим их количество, чтобы они не были слишком навязчивыми. И понижаем прозрачность слоя на 50%.
2. Создаём якорь над царапинами чтобы копировать эффект в другие слои. Позже добавим эти царапины в normal другого слоя.
3. Следующие три слоя — микс из гранж-текстур, с помощью которых мы добавляем разные интересные детали: отпечатки пальцев, разводы и пыль.
4. Делаем маску более интенсивной по краям и прозрачной в центре.
Дублируем слой и используем разные бленды для настройки интенсивности.
5. Повышаем резкость маски с помощью Sharpen.
6. И создаём якорь для маски целиком.
Он понадобится в следующем слое — из него же мы создадим маску прозрачности.
Готово! Финальный стэк эффектов Roughness выглядит так:
Детали в нём намного проще создавать и настраивать до того, как мы сделаем стекло прозрачным, — поэтому мы и создаём материал в таком порядке.
Opacity
В следующем слое создаём маску прозрачности.
На этом слое отключаем все каналы кроме opacity, а значение прозрачности устанавливаем на 0,15–0,18.
Этот параметр задаёт максимальную прозрачность стекла. В реальной жизни оно всегда немного непрозрачное, поэтому не стоит устанавливать параметр на 0.
Стекло уже выглядит неплохо, но детали и грязь видны только на блике. Когда его нет, стекло кажется абсолютно прозрачным, потому что в канале Opacity сейчас однородный цвет.
Для того, чтобы материал по краям циферблата был непрозрачным, добавим в слой opacity чёрную маску и скопируем в неё информацию из слоя Roughness с помощью якоря:
С помощью levels в якоре инвертируем её и увеличиваем контрастность маски, чтобы уменьшить площадь загрязнения.
Финальная маска слоя и канал Opacity выглядят так:
Добавление текстуры в канал Opacity делает края непрозрачными
Добавляя текстуру в канал Opacity делаем края непрозрачными.
Цвет непрозрачности задаём в нижнем слое, Glass BM:
Height
В этом слое настроим Height по маске царапин, чтобы на блике они смотрелись объёмнее.
Стекло готово!
Экспорт
Создадим новый шаблон, потому что у нас в модели нестандартный набор текстур. Стекло в Marmoset настраивается иначе, поэтому мне понадобятся не все каналы.
В проекте оставим только Normal, Roughness и маску Opacity.
Обратите внимание: используем альфу из канала, а не сам канал.
Информация из альфа-канала идентична маске слоя, она понадобится в Marmoset для настройки материала. Но есть загвоздка: в Marmoset обратная логика маски прозрачности.
Прозрачный пиксель — черный, непрозрачный — белый
Чтобы прозрачность в SP отображалась корректно, отключим на время этот эффект. Обратно его можно включить во время экспорта, чтобы в результате маска прозрачности была правильной.
Marmoset
В стандартном шейдере Marmoset прозрачность подключается в разделе Transparency.
На выбор есть несколько типов прозрачности. Ни один из них не работает так же, как в Substance Painter.
Единственный способ добиться схожего результата — использовать два типа прозрачности — один поверх другого — на разных геометриях.
Поэтому при экспорте модели в Marmoset создаём два стекла и смещаем их друг относительно друга, чтобы избежать пересечений геометрии.
В Marmoset создаём 2 материала для обоих стёкол
Первый будет использовать тип прозрачности add, а второй — dither.
Тип Add игнорирует канал цвета Albedo — он делает цвет полностью прозрачным. Отражения при этом рендерятся поверх задней геометрии.
В результате детализация в Roughness и в Normal будет видна на блике, но маску прозрачности использовать не получится. Параметр Alpha в настройках Transparency делает прозрачнее только отражения.
В этом материале используем только карту нормалей и Roughness
Dither
Прозрачность Dither рендерит Roughness, Normal и Albedo. Для каждого из каналов степень прозрачности пикселя задаётся чёрно-белой маской. Для всех каналов она одинаковая.
Это значит, что если в Albedo пиксель прозрачный, то отражений тоже не будет видно.
В материале glass_dither используем текстуру Roughness и маску прозрачности
Регулируем оттенок грязи цветом Albedo, так же, как в SP. Там мы делали это через слой, а здесь настроим цвет в самом материале.
Готово!
Можно включить видимость всех слоёв и посмотреть, как они выглядят вместе:
Если хочешь научиться текстурированию на профессиональном уровне, регистрируйся на курс по процедурным текстурам — он стартует 1 ноября.
Источник
Как сделать стекло в 3ds Max
Создание реалистичных материалов — это весьма трудоемкая задача в трехмерном моделировании по той причине, что дизайнер обязан учитывать все тонкости физического состояния материального объекта. Благодаря плагину V-Ray, используемому в 3ds Max, материалы создаются быстро и натурально, так как о всех физических характеристиках плагин уже позаботился, оставляя моделлеру только творческие задачи.
В этой статье будет небольшой урок по быстрому созданию реалистичного стекла в V-Ray.
Как создать стекло в V-Ray
1. Запустите 3ds Max и откройте какой-либо смоделлированный объект, в котором будет применяться стекло.
2. Назначьте V-Ray в качестве рендерера по умолчанию.
Установка V-Ray на компьютер его назначение рендерером описаны в статье: Настройка освещения в V-Ray
3. Нажмите клавишу «М», открыв редактор материалов. Щелкните правой кнопкой мыши в поле «View 1» и создайте стандартный материал V-Ray, как показано на скриншоте.
4. Перед вами шаблон материала, который мы сейчас превратим в стекло.
— В верхней части панели редактора материалов нажмите кнопку «Show Background in preview». Это поможет нам контролировать прозрачность и отражение стекла.
— Справа, в настройках материала, впишите название материала.
— В окне Diffuse щелкните на сером прямоугольнике. Это цвет стекла. Выберите цвет из палитры (желательно выбрать черный цвет).
— Переходим в Бокс «Reflection» (Отражение). Черный прямоугольник напротив надписи «Reflect» означает, что материал абсолютно ничего не отражает. Чем ближе этот цвет будет к белому, тем больше будет отражающая способность материала. Установите цвет, близкий к белому. Поставьте галочку в чекбокс «Fresnel reflection», чтобы прозрачность нашего материала менялась в зависимости от угла зрения.
— В строке «Refl Glossiness» установите значение 0,98. Это задаст яркий блик на поверхности.
— В боксе «Refraction» (преломление) мы задаем уровень прозрачности материала по аналогии с отражением: чем белее цвет, тем явнее прозрачность. Установите цвет, близкий к белому.
— «Glossiness» с помощью этого параметра регулируйте матовость материала. Значение, близкое к «1» — полная прозрачность, чем дальше — тем большую матовость имеет стекло. Поставьте значение 0,98.
— IOR — один самых важных параметров. Он представляет коэффициент преломления. В интернете можно найти таблицы, где этот коэффициент представлен для разных материалов. Для стекла он составляет 1,51.
Вот и все основные настройки. Остальные можно оставить по умолчанию и регулировать их в зависимости от сложности материала.
5. Выделите объект, которому хотите присвоить материал стекла. В редакторе материалов нажмите кнопку «Assign Material to Selection». Материал назначен и будет изменяться на объекте автоматически при редактировании.
6. Запустите пробный рендер и смотрите на результат. Экспериментируйте до тех пор, пока он не будет удовлетворительным.
Таким образом, мы научились создавать простое стекло. Со временем, вы будете сможете более сложные и реалистичные материалы!
Помимо этой статьи, на сайте еще 12339 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник
Как настроить материал стекла
Опубликовано 31.05.2017 в 20:27. Автор Станислав Гадельшин
Если видео ниже не отображается, отключите блокировку рекламы на этом сайте и обновите страницу. Все уроки тут встраиваются с Youtube и почему-то блокировщики считают их рекламой.
В этом уроке разберем, как создать материал обычного стекла в 3ds Max (Corona Renderer).
Архив со сценой, которая на рендерах ниже, можете скачать по этой ссылке. Сцена была создана с использованием 3ds Max 2014 и Corona Renderer 1.5
Сразу хочу предупредить: то, что я показываю в этом уроке — это не универсальное решение, а хорошая и более-менее физически корректная основа.
Это означает, что в зависимости от того, какой материал вы хотите воспроизвести, вероятнее всего придется изменять какие-либо настройки для достижения желаемого результата.
Не бойтесь экспериментировать и да пребудут с вами автосохранения!
Чтобы получить материал самого обычного стекла, нужно сделать следующие настройки: 1. Диффузный цвет (diffuse color) — сделать черным, либо отключить (у параметра level выставить значение 0). 2. Отражения (Reflection) — включить (у параметра level выставить значение 1). 3. Преломления (Refraction) — включить (у параметра level выставить значение 1).
В результате мы получим вот такой материал стекла:
Если вы создаете материал стекла, чтобы использовать его в окнах при визуализации интерьера, тогда настоятельно рекомендую включить галочку thin. Когда этот параметр включен, рефракция при просчете игнорируется и просчитываются только отражающие свойства, что в разы ускоряет скорость рендера интерьера.
И наоборот, если вы хотите получить эффекты каустики (яркие световые пятна причудливой формы, которые появляются на поверхности стола, когда, например, сквозь стеклянную вазу проходят солнечные лучи), тогда отключити галочку thin и включите галочку Caustics. Рендер будет идти в разы дольше, но при предметной визуализации эффект незаменим.
Думаю, вам также будет интересно посмотреть, как создать материал цветного стекла и материал матового стекла в 3ds Max (Corona Renderer).
Источник
Создаём материал стекла в Substance Painter и Marmoset
Всем привет, это Антон Агеев — автор курса «Процедурный трип». На нём я учу создавать процедурные текстуры на профессиональном уровне.
Один из самых популярных вопросов от студентов — как создать и настроить материал прозрачного стекла?
В прошлый раз я рассказал о создании материала бетона в Substance Designer, а в этом гайде покажу, как делать стекло в Substance Painter — на примере модели будильника.
Стекло — непростой материал, потому что единого способа его сделать нет. В каждой программе оно настраивается по-разному, и поэтому часто возникает путаница.
В статье два раздела: о создании текстуры в Substance Painter, и о её импорте и настройке в Marmoset. Методику из второго раздела я частично заимствую из материала художника Ognyan Zahariev.
В моём проекте у модели два текстурных сета — для корпуса и для стекла будильника. Каждый текстурный сет использует свой шейдер, потому что в материале стекла нужна прозрачность, а в корпусе нет.
Чтобы создать новый шейдер текстурного сета стекла, нажимаем на Main Shader в Texture Set List:
Переименуем его в разделе Shader Settings:
Сменим типа шейдера на pbr—metal—rough—alpha blending:
В SP 2 типа прозрачности: alpha-blending и alpha-test.
- В Alpha-test нет градаций. Пиксель либо полностью прозрачный, либо нет. Этот тип подходит, когда нужна жёсткая маска, — например, текстура листьев. Это более «дешёвая» альфа с точки зрения производительности.
- Alpha-blending более «тяжёлый», он поддерживает степень прозрачности и подойдёт для стекла.
После настройки шейдера добавим новый канал — opacity — в текстурный сет стекла.
Он управляет прозрачностью в материале с помощью чёрно-белой текстуры. Чем темнее пиксель, тем он прозрачнее на модели, и наоборот.
Для оптимизации процесса уберём каналы Metallic, Normal и AO из текстурного сета.
Создадим первый слой — обычный Fill Layer с базовым значением Roughness и цветом непрозрачности.
По мере загрязнения, ближе к краям, стекло будет становиться непрозрачным. Цвет в канале BaseColor в этом слое позволит настроить его оттенок.
Создаём детализацию в канале Roughness, отключаем все остальные. Значение Roughness в слое выставляем на 1.
Теперь добавляем маску для слоя.
1. Создаем процедурную текстуру Scratches generator.
Настраиваем её так, чтобы было похоже на царапины на стекле — тонкие и прямые. Уменьшим их количество, чтобы они не были слишком навязчивыми. И понижаем прозрачность слоя на 50%.
2. Создаём якорь над царапинами чтобы копировать эффект в другие слои. Позже добавим эти царапины в normal другого слоя.
3. Следующие три слоя — микс из гранж-текстур, с помощью которых мы добавляем разные интересные детали: отпечатки пальцев, разводы и пыль.
4. Делаем маску более интенсивной по краям и прозрачной в центре.
Дублируем слой и используем разные бленды для настройки интенсивности.
5. Повышаем резкость маски с помощью Sharpen.
6. И создаём якорь для маски целиком.
Он понадобится в следующем слое — из него же мы создадим маску прозрачности.
Готово! Финальный стэк эффектов Roughness выглядит так:
Детали в нём намного проще создавать и настраивать до того, как мы сделаем стекло прозрачным, — поэтому мы и создаём материал в таком порядке.
В следующем слое создаём маску прозрачности.
На этом слое отключаем все каналы кроме opacity, а значение прозрачности устанавливаем на 0,15—0,18.
Этот параметр задаёт максимальную прозрачность стекла. В реальной жизни оно всегда немного непрозрачное, поэтому не стоит устанавливать параметр на 0.
Стекло уже выглядит неплохо, но детали и грязь видны только на блике. Когда его нет, стекло кажется абсолютно прозрачным, потому что в канале Opacity сейчас однородный цвет.
Для того, чтобы материал по краям циферблата был непрозрачным, добавим в слой opacity чёрную маску и скопируем в неё информацию из слоя Roughness с помощью якоря:
С помощью levels в якоре инвертируем её и увеличиваем контрастность маски, чтобы уменьшить площадь загрязнения.
Финальная маска слоя и канал Opacity выглядят так:
Добавляя текстуру в канал Opacity делаем края непрозрачными.
Цвет непрозрачности задаём в нижнем слое, Glass BM:
В этом слое настроим Height по маске царапин, чтобы на блике они смотрелись объёмнее.
Создадим новый шаблон, потому что у нас в модели нестандартный набор текстур. Стекло в Marmoset настраивается иначе, поэтому мне понадобятся не все каналы.
В проекте оставим только Normal, Roughness и маску Opacity.
Информация из альфа-канала идентична маске слоя, она понадобится в Marmoset для настройки материала. Но есть загвоздка: в Marmoset обратная логика маски прозрачности.
Чтобы прозрачность в SP отображалась корректно, отключим на время этот эффект. Обратно его можно включить во время экспорта, чтобы в результате маска прозрачности была правильной.
В стандартном шейдере Marmoset прозрачность подключается в разделе Transparency.
На выбор есть несколько типов прозрачности. Ни один из них не работает так же, как в Substance Painter.
Единственный способ добиться схожего результата — использовать два типа прозрачности — один поверх другого — на разных геометриях.
Поэтому при экспорте модели в Marmoset создаём два стекла и смещаем их друг относительно друга, чтобы избежать пересечений геометрии.
Первый будет использовать тип прозрачности add, а второй — dither.
Тип Add игнорирует канал цвета Albedo — он делает цвет полностью прозрачным. Отражения при этом рендерятся поверх задней геометрии.
В результате детализация в Roughness и в Normal будет видна на блике, но маску прозрачности использовать не получится. Параметр Alpha в настройках Transparency делает прозрачнее только отражения.
Прозрачность Dither рендерит Roughness, Normal и Albedo. Для каждого из каналов степень прозрачности пикселя задаётся чёрно-белой маской. Для всех каналов она одинаковая.
Это значит, что если в Albedo пиксель прозрачный, то отражений тоже не будет видно.
Регулируем оттенок грязи цветом Albedo, так же, как в SP. Там мы делали это через слой, а здесь настроим цвет в самом материале.
Можно включить видимость всех слоёв и посмотреть, как они выглядят вместе:
Если хочешь научиться текстурированию на профессиональном уровне, записывайся на наш курс по процедурным текстурам — он стартует 29 июля.
Узнать все подробности и зарегистрироваться можно на нашем сайте: https://www.school-xyz.com/texture
Материал подготовлен командой XYZ Media.
Наши каналы в Telegram и на YouTube.
Забавное совпадение 🙂 На прошлой неделе, как раз делал книжный шкаф, и задумался как делается прозрачность в SP, пришлось гуглить.
Вышла бы эта статья пару недель назад, сэкономили бы мне время 🙂
В любом случае, спасибо!
Но я так и написал же, что пришлось гуглить.
Я вот лично не могу учиться по видео. Еще и на английском. Лично для меня, самое ужасное, что мы могли сделать — это перевести туториалы и уроки в видео-формат на Ютуб. Какая-то психологическая особенность, что я не воспринимаю на слух лекции. Мне нужно именно сидеть и разбираться с преподавателям, либо текст.
А если ты учишься чему-то с нуля, то лучше потратиться на какие-нибудь изначальные курсы, чтобы ты не тыкался по всему Интернету, не зная зачем и почему, а чтобы тебя учили структурированно и по определенным схемам, закладывая базу. И имея базу и понимание того, чему ты должен учиться в дальнейшем, ты можешь приступать к самостоятельному обучению.
Да и курсы хороши тем, что ты работаешь именно с преподавателям, с которым ты держишь постоянно связь и который дает отзывы на твою работу. То есть тебе моментально говорят, что ты делаешь не правильно, и говорят, как это исправить. Так еще преподаватель тебе может говорить кучу полезных вещей просто исходя из своего опыта, между делом.
Очень полезная статья, спасибо! Сейчас как раз в тему, ибо собираюсь моделить ретро телек) Ребятам из школы бесконечный репект, мой путь в 3д начался именно с их бесплатных курсов. Даже тот материал, который в свободном доступе безумно полезен!
При экспорте текстурных карт из Substance советую выставлять в настройках padding. Бесконечное значение не позволит нормально работать с текстурами в граф.редакторе. А это часто приходится делать. А так очень круто получилось 🙂
Источник