Всем привет!

В этом уроке я расскажу вам о физически-корректном методе рендеринга (или "парадигме"), в частности, в редакторе Substance Painter.

Substance Painter позволяет нам разрабатывать Материалы, которые соответствуют модели физически-корректного рендеринга (Physically Based Rendering - PBR; иногда вы также встретите сокращение PBS, что означает физически-корректное затенение (Physically Based Shading), конечно же, применительно к поверхностям объектов).

Материал PBR сделан из нескольких Текстур (изображений, накладываемых на 3D объекты); здесь мы рассмотрим только то, что они из себя представляют, и, прежде всего, как они объединяются друг с другом в процессе разработки материала PBR в редакторе Substance. Мы должны понимать эти вещи, чтобы иметь возможность уверенно создавать и настраивать наши Материалы.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 01

Чтобы не делать этот урок слишком теоретическим, я расскажу об основных элементах PBR и о том, как они воплощаются в Substance, используя 3D-модель, уже предоставленную с Материалами и текстурами в этой программе. Однако, для обучения по этому уроку данная модель вам особо не понадобится.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 03

Парадигма физически-корректного рендеринга, как следует из названия, основана на физическом подходе: как оно происходит в реальном мире.
Вы можете присваивать Материалам два вида рабочих поверхностей: Металлик и Зеркальность.
В первом случае (Металлик) мы должны разделять поверхности на металлические и не-металлические. В зависимости от этих характеристик меняется поведение всех каналов.

Во втором случае (Зеркальность) мы задаем интенсивность и цветовой оттенок зеркальных отражений, чтобы определить, как будет вести себя свет при взаимодействии с поверхностью объекта.

В частности, при режиме PBR "Металлик" (который используется в этом примере), внешний вид поверхности определяется некоторыми особенностями, наиболее важными из которых являются:

  • его природа: металлический или не-металлический ("диэлектрик");

20190911 SP 2019 000 Introduzione PBR Materiali Textures 04

  • его "Базовый Цвет", который в металлическом объекте показывает интенсивность отражений света, а в не-металлических объектах он указывает базовый цвет поверхности, без эффектов освещения;

20190911 SP 2019 000 Introduzione PBR Materiali Textures 05

  • уровень блеска / гладкости ("Глянец"; в противоположность "Шероховатости") поверхности, в ее различных точках.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 06

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

20190911 SP 2019 000 Introduzione PBR Materiali Textures 07

Деревянная бочка, которую я использую в этом видео, позволяет нам на примере одного объекта изучить, как эта базовая информация преобразуется в Текстуры и объединяет их в Материал.

Предварительный просмотр готового Материала, примененного к объекту в 3D-окне, открывается клавишей "M" (Материал), или путем выбора пункта "Материал" в раскрывающемся списке в правом верхнем углу 3D-окна.

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

Чтобы просмотреть отдельные информационные каналы (которые преобразуются в такое же количество изображений Текстур, нанесенных на поверхность объекта), мы можем несколько раз нажать клавишу "C" или выбрать интересующий нас канал в раскрывающемся списке в правом верхнем углу 3D-окна.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 08

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

20190911 SP 2019 000 Introduzione PBR Materiali Textures 09

Давайте перейдем ко второму фундаментальному каналу PBR: к базовому цвету.
Как вы можете видеть, этот информационный канал представляет простой цвет объекта через Цветную Текстуру, без эффектов освещения или затенения: это так называемые "плоские" Текстуры.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 10

Цвета металлических и деревянных деталей имеют одинаковую интенсивность: да, цвета разные, но они не так уж сильно отличаются, даже если они относятся к совершенно различным веществам ...

Причина в том, что программой Substance во время процессов затенения и рендеринга с использованием канала "Металлик" (и его Текстуры) осуществляется разграничение, как должны обрабатываться световые отражения в зависимости от того, относятся ли они к металлической или не-металлической поверхности: полутона Базового цвета металлических деталей фактически определяют интенсивность отражений света (и цветовой оттенок), которые должны быть переданы этим отражениям.

Материал "Старое железо" - это "грязный" материал, поэтому эффект не очень значителен. Но посмотрим, как все изменится в различных каналах и в конечном результате, если я вставлю Материал "Чистый Алюминий" между материалами дерево и металл, и если я отключу лежащий ниже материал "Старое железо":

20190911 SP 2019 000 Introduzione PBR Materiali Textures 11

  • в конечном результате металлические детали выглядят НАМНОГО более отражающими, чем раньше;

20190911 SP 2019 000 Introduzione PBR Materiali Textures 12

  • в канале "Металлик" металлические части окрашены в чистый белый цвет: это очень чистый металл;

20190911 SP 2019 000 Introduzione PBR Materiali Textures 13

  • в канале "Базовый Цвет" металлические части почти белые: это признак того, что в этих точках интенсивность зеркальных отражений будет максимальной и там не будет цветового оттенка.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 14

Теперь посмотрим, что произойдет, если свести к нулю значение параметра "Металлик" в материале "Чистый Алюминий": "полосы" побелели, они больше не отражаются, как раньше, и выглядят как белые пластиковые объекты.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 15

Теперь мы установим "Металлик" в 1, но уменьшим значение Базового Цвета: полосы сохраняют типичную "отражательную способность" металла, но постепенно становятся темнее.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 16

Суть в том, что в режиме "Металлик", как у нас, Базовый Цвет объекта сам по себе недостаточен для определения того, как и насколько сильно поверхность будет отражающей, потому что требуется еще указать, является ли он металлом или нет; y металлической поверхности интенсивность Базового Цвета также является интенсивностью зеркальных отражений света, в то время как у не-металлической поверхности Базовый Цвет определяет только ее собственный цвет, как это происходит на деревянных деталях бочки.

Я оставляю материал "Чистый Алюминий" активированным, а "Старое железо" - деактивированным, чтобы показать вам эффекты третьего фундаментального канала Материала: Шероховатость.

Шероховатость (которая является противоположностью Глянца), как и карта Металлик, представлена изображением в градациях серого, где белый - это максимальная шероховатость, а черный - полностью глянцевая, идеально отражающая поверхность; на самом деле в PBR реализовано идеальное зеркало с металлическим материалом с чистым белым цветом и шероховатостью "0", как это видно сейчас на видео.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 17

Увеличивая значение шероховатости, мы сделаем поверхность менее гладкой, и, следовательно, это сделает ее отражения более "рассеянными" (размытыми). Это относится как к металлам, так и к не-металлам.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 18

Теперь я удаляю материал "Чистый Алюминий" и активирую "Старое железо", чтобы вернуться к исходной конфигурации проекта и взглянуть на некоторую дополнительную информацию, которая методом Компьютерной Графики позволяет добавлять детали к поверхностям во время рендеринга; то есть, без необходимости физически моделировать их при помощи геометрии.

Я выбираю "Нормаль + Высота + Сетка" из селектора в правом верхнем углу 3D-окна.
Этот вид показывает комбинацию нескольких информационных каналов, которые изменяют моделируемые детали на поверхности объекта; без этих деталей поверхности объекта выглядели бы плоскими, не очень убедительными, особенно в деревянных деталях.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 19

В частности, в примере, который я показываю на экране, детали поверхности на деревянных элементах, в основном, реализуются слоем "Волокна"; чтобы увидеть различия во внешнем виде поверхности с этой информацией и без нее, достаточно отключить эти эффекты на вкладке "Слои", тут же наблюдая изменения в 3D-окне в любом из режимов - "Нормаль + Высота + Сетка" или "Материал".

20190911 SP 2019 000 Introduzione PBR Materiali Textures 20

Различия становятся более очевидными, если объект освещается "косым" светом, а не фронтальным.

20190911 SP 2019 000 Introduzione PBR Materiali Textures 21

Эти эффекты также присутствуют в металлических деталях, в слоях "Железо" и "Грани" материала "Старое железо".

Что ж, на этом мы закончим вводный урок по основам PBR в Substance Painter. Надеюсь, вы нашли его интересным и полезным.

Скоро увидимся!