Въезжаем в PBR

Главная Форумы Уроки по Blender Въезжаем в PBR

В этой теме 14 ответов, 10 участников, последнее обновление  volodymyr 1 неделя назад.

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Автор
    Сообщения
  • #10024
    DrBanana
    DrBanana
    Участник

    Бывает, прочитал один раз не правильно, так и запомнил) К сожалению не могу править, а так хочется, что бы вы прочли)

    Здравствуйте.

    Как вы уже знаете Cycles предоставляет базовый набор нодов для создания сложных материалов. Основным недостатком данного подхода является сложность его освоения, ведь даже если изучить все ноды и шейдеры, узнать, что они делают, то это не прибавит умения создавать реалистичные материалы. Сам я в этой ситуации редко когда уходил дальше чего-то подобного:

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

    К чему же я вел – PBR – Physically-based rendering или физически корректный рендеринг – набор правил по которым осуществляется настройка материала. Не буду углубляться в описание, скажу лишь то, что эти правила помогают учесть все аспекты которыми должен обладать реалистичный материал. Сейчас разбирая по шагам каждый из них мы сделаем свою связку PBR для Cycles и применим ее на данной модельке:

    Основные параметры:

    Albedo

    То, что мы привыкли называть Deffuse. Отвечает за цвет объекта, может быть как константой так и картой(Текстурой).

    Градации серого:

    Следовательно на начальном этапе создадим такую связку и обозначим нод RGB как Albedo:

    Reflectivity

    Зеркальность – то, что называется Glossy в Cycles. Количество света отражаемое объектом, регулирует силу отражений от тусклых и едва заметных до четко различимых вплоть до зеркальной поверхности. Тут важно отметить один важных из принципов PBR – все материалы условно можно поделить на металлы и неметаллы (диэлектрики), разница состоит в том, что неметаллы имеют определенный порог отражающей способности превысив который они становятся металлами, не могу сказать точно, но по моим наблюдениям, для нашего шейдера это 0.5-0.6, все, что выше – металл. Еще стоит отметить то, что не металлы отражают нейтральный – белый свет, металлы же окрашивают отражения (золото, латунь, бронза).

    Albedo = 1.

    Для управления этим параметром смешаем Glossy с Difusse и на вход mix подадим нод Value.

    Fresnel

    Очень важный параметр знакомый нам по Cycles, рассказывать о нем нет смысла, так как это уже было сделано в уроках на этом сайте
    5 советов для создания лучших материалов
    Создание реалистичных шейдеров в Cycles

    Стоит только упомянуть, что в PBR этот параметр почти одинаков для всех объектов, отражающая способность же зависит и от шероховатости объекта.

    Microsurface

    Так же известный как Roughness – имитация микрошероховатостей, трещин и других не видимых глазом неровностей. Размывает отражения, в конечном счете заставляя свет не отражаться, а преломляться, то есть отскакивать в случайных направлениях.
    Не регулирует силу отражений!!! А их размытие.

    Albedo = 1 / Reflectivity = 1.

    Для регулировки микроповерхности подключим нод Value ко входам Roughness шейдеров отвечающих за отражения.

    Normal Map

    Карта имитации неровностей и рельефа поверхности.

    Создание карты нормалей в Blender

    Добавим входной нод value для регулировки ее силы и нод RGB для связки со входом color. Для большей гибкости настроим контроль силы для Albedo и Reflectivity отдельными нодами.

    Ambient occlussion
    Необходима для создания эффекта самозатенения объекта, устанавливает тени в участках труднодоступных для проникновения света.

    Для этого добавим RGB и смешаем его с Albedo через режим наложения Multiply, этот режим игнорирует белый цвет, таким образом на текстуру лягут только тени. Так же смешаем AO Map с Reflectivity что бы избежать ярких бликов в затененных местах меша.

    Cavity

    Тоже карта, содержит информацию о углублениях на поверхности в мелких трещинах и ямках. В таких местах не будет отражений. Наложим на Reflectivity.

    На этом связка готова, однако нет предела совершенству) Поэтому ее необходимо доработать.

    Доработка

    Как я уже говорил, материалы делятся на металлы и неметаллы, таким образом нам понадобится какая то карта для их разграничения.
    Первый способ с помощью Specular map – цветная карта регулирующая цвет отраженного света от поверхности объекта, честно сказать, я делал связку под себя и считаю этот способ не удобным, так как необходимо за ранее подобрать нужные цвета металлов и нанести их на карту, далее мы теряем возможность менять их на лету из редактора нодов.
    Воторй – Metallnes map – черно-белая карта разделяющая металл и неметаллы. Работает как фактор смешивания, очень удобно и привычно.
    Добавим вход для карты, value для регулировки отражений у металла и RGB для настройки его цвета. Свяжем ноды таким образом, что бы новые параметры не работали в отсутствии Metallness map.

    Для начала свяжем Metallness и Reflectivity, Metallness пойдет в обход AO и Cavity.

    Далее цвет металла, для этого разделим параметр Glossy за который отвечает Reflectivity на два нода, один будет все так же отвечать за отражения неметаллов, а другой за металлы. Так же подключим к нему отдельный контроллер параметра Microsurface и Normal Strenght.

    В итоге получили такую связку:

    Теперь когда мы подключим Metallness Map, мы сможем отдельно регулировать Normal strenght, microsurface, color для металлов (белых участков на карте), в отсутствии карты параметр Metallness Map должен быть равен 0, иначе мы пойдем в разрез с принципами PBR и рассчитывать на хороший результат не придется.

    В случае если объект будет полностью из металла, то его показатели отражения будут так же регулироваться параметром Reflectivity, но при этом к нему нельзя подключать AO и Cavity, у металлов нет AO, а карты сработают как карты Microsurface и размоют отражения.

    И так правила:
    – Metallness и Metall color работают при наличии Metallness Map и идут в обход AO / Cavity (Об этом мы позаботились).
    – Для металлического объекта (Reflectivity более 0.5) отключить AO / Cavity.

    Если на объекте более одного металла придется мешать несколько PBR дополнительными масками.

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

    Остался не решен один вопрос – для чего это все? Ниже покажу на примере.

    Демонстрация

    Значения в связке были выставлены мною за ранее, в данном примере покажу как меняется картинка от подключаемых карт.

    1. Подключаем текстуру через вход Albedo

    2. AO Map

    3. Cavity

    4. Normal map

    5. Metallness Map

    6. сделаем заточенный кончик лезвия обычным Anisotropic и маской

    PBR_preview – Яндекс.Диск

    #10031
    Артем Слаква
    Артем Слаква
    Хранитель

    Аплодирую стоя :)

    Теперь главное, чтобы этот пост не только я прочитал, а все те, кому он действительно нужен.

    Если и дальше так будет продолжаться, нужно будет на главной баннер какой-то повесить, аля: “Уроки от доктора Банана” :)

    #10032

    vin79b
    Участник

    Присоединяюсь к аплодисментам!

    #10034
    DrBanana
    DrBanana
    Участник

    Спасибо))

    #10071
    Slippery
    Slippery
    Участник

    Блин, урок наверн великолепный. Я его не дочитал после Альдебо. Которое в девичестве Альбедо всёж. Сочуствую, вам еще и скрины заменять… http://morgoth.ru/image/uUR
    upd Ещё опечатка в картинке к Френелю., там R пропущена.

    #10079
    Артем Слаква
    Артем Слаква
    Хранитель

    DrBanana
    Я скопировал твой перепост и заменил оригинал. Думаю так будет лучше :)

    В будущем, если нужно отредактировать подобный ответ – пиши мне на почту, я буду его править. Или, если это был не последний твой урок на форуме, я могу выдать тебе права редактора или что-то подобное и тогда будет еще проще.

    #10083
    DrBanana
    DrBanana
    Участник

    Хорошо) думаю пока, что лучше писать на почту)

    #10086
    Slippery
    Slippery
    Участник

    Выдающийся урок, и необычные шейдеры, и окаймление нод тож сильно. Такое наверное поясняется в уроке по OSL. Отдельный урок по развёртке и текстурированию под этот топор будет ? Когда одна текстура на весь меш – вроде понятно, проходил такие уроки. А вот как работать с разверткой, или даже развертками (видите, даже это непонятно), когда текстур несколько, и накладываются они на отдельные полигоны – вообще тёмный лес :) И да, тогда действительно придется создавать кафедру докторскую :) Отдельный раздел форума :)

    #10153
    DrBanana
    DrBanana
    Участник

    Если честно считал, что развертку делать не так уж сложно для топора то) но могу дополнить еще одним постом)

    #12098

    dubus
    Заблокирован

    Годнотища 999 лвл:)

    #12391

    103thefallen
    Участник

    Жду развертку и моделинг что бы сразу было – Создания фотореалистичной модели топора. Часть 1,2,3

    #12635
    truegeorg
    truegeorg
    Участник

    еслиб еще и картинки не блочились на работе цены б статье не было.

    #13847

    Spirit412
    Участник

    Привет
    Думаю будет интересно. Аддон PBR библиотеки материалов с привью и плюшками.
    http://3dwolf.weebly.com/materials.html
    Гляньте видео.

    #13890

    Максим
    Участник

    да, давно их использую.
    Урок – супер. Автор пиши ещё!

    #14287

    volodymyr
    Участник

    Здравствуйте…очень нужна помощь…. Вопрос. нужно FBX + текстуры. (Albedo, metalnes у которого в альфаканале находиться raffnes, normal и AO. )
    Fbx есть Albedo это diffuse(как запечь знаю), нормал ао тоже. Но как запечь metalnes? / и как запечь Albedo, metalnes у которого в Альфаканале находиться raffnes, normal и AO? и что такое рафнес? и как эго добить? зарание …ОЧЕНЬ большое спасибо.

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)

Для ответа в этой теме необходимо авторизоваться.


О сайте

На данном сайте Вы сможете найти множество уроков и материалов по графическому
редактору Blender.

Контакты

Для связи с администрацией сайта Вы можете воспользоваться следующими контактами:

Email:
info@blender3d.com.ua

Следите за нами

Подписывайтесь на наши страницы в социальных сетях.

На сайте Blender3D собрано огромное количество уроков по программе трехмерного моделирования Blender. Обучающие материалы представлены как в формате видеоуроков, так и в текстовом виде. Здесь затронуты все аспекты, связанные с Blender, начиная от моделирования и заканчивая созданием игр с применением языка программирования Python.

Помимо уроков по Blender, Вы сможете найти готовые 3D-модели и архивы высококачественных текстур. Сайт регулярно пополняется новым контентом и следит за развитием Blender.