В этом уроке мы рассмотрим, что такое PBR, как основные Textures используются для определения PBR Material в Substance и, что наиболее важно, как они работают вместе.
Видеоверсия этого руководства в настоящее время недоступна на этом языке. Ниже вы можете посмотреть английскую версию с субтитрами; под видео вы найдете перевод расшифровки на русский язык.
Текстовая расшифровка видео
Всем привет! Если вы здесь, то, вероятно, уже знаете, что Substance Painter — это программное обеспечение, которое позволяет создавать Materials и Textures для 3D-моделей. Файлы 3D-моделей импортируются в Substance Painter, и здесь можно создавать текстурные изображения, проецируя их на геометрию, а затем экспортировать эти изображения, чтобы объект вместе с Textures можно было использовать в игровых движках, таких как Unity или Unreal, для создания видеоигр или приложений с виртуальной и дополненной реальностью, в программах для анимации и рендеринга, таких как Blender 3D, 3D Studio MAX и Maya, а также в системах визуализации 3D в реальном времени в Интернете, таких как Sketchfab, и многом другом.
Прежде чем продолжить, а точнее, ещё до разговора об интерфейсе программы или импорте 3D-модели в новый пустой проект Substance Painter, нам сначала нужно объяснить, что подразумевается под Material.
Material — это набор информации, который при применении к 3D-объекту определяет, как он будет вести себя при освещении и рендеринге в виртуальной сцене. Rendering, то есть финальное изображение, видимое на экране, будь оно статическим или отображаемым в реальном времени, является результатом взаимодействия между светом и поверхностями в виртуальной сцене. С одной стороны у нас есть источники света различных типов, от виртуальных ламп до lighting environment Textures, а с другой стороны — поверхности или, в некоторых случаях, объёмы объектов. Затем к этому первоначальному результату могут быть добавлены эффекты постобработки, но, как следует из названия, это именно эффекты и фильтры, применяемые уже после самого процесса рендеринга.
Итак, Material — это набор информации... но какой именно информации?
В зависимости от теоретической модели, или «схемы», «метода» либо «парадигмы», используемой для создания рендеринга, могут задаваться различные типы информации, каждая со своими особенностями. Substance Painter, в частности, позволяет определять Materials, соответствующие модели Physically Based Rendering, или PBR. Иногда можно встретить и аббревиатуру PBS, означающую Physically Based Shading, то есть затенение поверхностей объектов.

В этом tutorial мы не будем слишком глубоко погружаться в теорию PBR, поскольку ей будет посвящён отдельный tutorial. Здесь мы просто рассмотрим основные Textures, используемые для определения PBR Material в Substance, и, что особенно важно, разберём, как они работают вместе. Понимание этих концепций необходимо для уверенного создания и настройки наших Materials без угадывания при изменении параметров того или иного информационного канала Material.
Чтобы не делать это видео слишком теоретическим, я объясню основные элементы PBR и то, как они реализованы в Substance, используя 3D-модель, для которой уже созданы Materials и Textures в этом программном обеспечении.

Парадигма Physically Based Rendering, как следует из названия, основана на физическом подходе, то есть вдохновлена тем, как объекты ведут себя в реальном мире.
Materials могут задаваться с использованием двух workflows: Metallic и Specular.
В workflow Metallic поверхности делятся на металлические и неметаллические материалы, и в зависимости от этого различия все остальные каналы работают по-разному.
В workflow Specular, напротив, задаются интенсивность и возможный цветовой оттенок specular reflections, чтобы определить, как будет вести себя свет при взаимодействии с поверхностью объекта.
В частности, в workflow PBR Metallic, который используется в данном примере, внешний вид поверхности определяется несколькими характеристиками, наиболее важными из которых являются:
её природа, прежде всего определяющая, является ли материал металлом или неметаллом, также называемым dielectric;

её Base Color, который в металлическом объекте определяет интенсивность световых отражений, тогда как в неметаллических объектах фактически представляет истинный цвет поверхности без эффектов освещения;

уровень гладкости, или Glossiness, либо, наоборот, уровень Roughness поверхности в различных её областях.

К этим характеристикам, наблюдаемым в реальном мире, добавляются дополнительные возможности, полезные в виртуальном мире. Например, используя специальные текстурные изображения, такие как Normal Maps или Height Maps, можно имитировать наличие деталей без их фактического моделирования в геометрии, экономя вершины, рёбра и полигоны, а следовательно, и вычислительные ресурсы во время рендеринга, особенно в видеоиграх и других приложениях реального времени.

Деревянная бочка, которую я использую в этом видео, позволяет нам рассмотреть в рамках одного объекта, как эти базовые данные преобразуются в Textures и объединяются в Substance Material.
Чтобы отобразить preview полного Material, применённого к объекту в 3D View, я нажимаю клавишу M, от слова Material, либо выбираю Material из выпадающего меню в правом верхнем углу 3D View.
Как видите, у нас есть как металлические элементы из железа, так и неметаллические элементы из дерева. Это позволит нам оценить различия в обработке этих двух типов материалов в парадигме PBR, особенно в отношении определения Base Color и цветов specular reflections.
Чтобы отобразить отдельные информационные каналы, соответствующие различным текстурным изображениям, применённым к поверхности объекта, можно несколько раз нажать клавишу C или выбрать нужный канал из выпадающего меню в правом верхнем углу 3D View.

Начнём с канала Metallic, который определяет, какие части Material должны обрабатываться как металлические, а какие — нет, используя изображение в оттенках серого, где белый цвет обозначает чистый металл, а чёрный — полностью неметаллический материал. В случае этой бочки у нас также есть серые области, потому что материал, использованный для металлических частей, «Iron Old», предназначен для имитации старого изношенного железа, возможно покрытого пылью или ржавчиной, что, так сказать, снижает его «металличность».
Деревянные части, напротив, выглядят полностью чёрными, что означает неметаллический материал, как и ожидалось.

Перейдём ко второму основному каналу PBR — Base Color.
Как видите, этот информационный канал отображает базовый цвет объекта с помощью цветной Texture без эффектов освещения или shading. Это, так сказать, «плоские» Textures. Цвета металлических и деревянных частей имеют схожий уровень интенсивности. Конечно, цвета отличаются, но визуально они не кажутся радикально разными, хотя относятся к совершенно различным материалам.

Причина в том, что различие во время shading и rendering определяется в Substance с помощью канала Metallic и связанной с ним Texture, которая сообщает Substance, что световые отражения должны обрабатываться по-разному в зависимости от того, является ли поверхность металлической или неметаллической. Серые значения в Base Color металлических частей определяют интенсивность световых отражений и возможный цветовой оттенок этих отражений.
Material Iron Old является «грязным» материалом, поэтому эффект не слишком заметен, но посмотрите, как всё меняется в различных каналах и в финальном результате, если я вставлю Substance Material «Aluminium Pure» между материалом дерева и материалом металла и отключу расположенный ниже материал Iron Old.

В финальном результате, то есть в режиме Material, который объединяет все информационные каналы, металлические части выглядят ГОРАЗДО более отражающими, чем раньше.

В канале Metallic металлические части имеют чисто белый цвет, что представляет идеально чистый металл.

В канале Base Color металлические части почти белые, что указывает на максимальную интенсивность specular reflections в этих областях без какого-либо цветового оттенка.

А теперь посмотрите, что произойдёт, если я установлю параметр Metallic у Aluminium Pure в значение 0: металлические обручи становятся белыми, они больше не отражают свет как раньше и начинают выглядеть как белые пластиковые объекты.

Теперь снова установим Metallic в значение 1, но уменьшим значение Base Color: обручи сохраняют характерную металлическую отражающую способность, но постепенно становятся темнее.

В этом и заключается ключевой момент: в workflow Metallic, как в используемом здесь, одного лишь Base Color недостаточно для определения того, насколько отражающей будет поверхность, потому что нам также нужно указать, является ли она металлом или нет. В металле интенсивность Base Color одновременно является интенсивностью световых и specular reflections, тогда как в неметалле Base Color определяет только реальный цвет поверхности, как это происходит с деревянными частями бочки.
Я оставлю Material Aluminium Pure включённым, а Iron Old отключённым, чтобы показать вам эффекты третьего основного канала Material — Roughness.
Roughness, противоположный гладкости поверхности, как и карта Metallic, представлен изображением в оттенках серого, где белый обозначает максимальную шероховатость, а чёрный — идеально глянцевую, полностью отражающую поверхность. Фактически идеальное зеркало в PBR реализуется с использованием металлического Material с чисто белым цветом и Roughness, установленным в 0, как я сейчас показываю на экране.

Увеличивая значение Roughness, мы делаем поверхность менее гладкой, и поэтому её specular reflections становятся более рассеянными или, в некотором смысле, размытыми. Это относится как к металлам, так и к неметаллам.

Сейчас я удалю Material Aluminium Pure и снова активирую Iron Old, чтобы вернуться к исходной конфигурации проекта и рассмотреть дополнительную информацию, которая в Computer Graphics позволяет добавлять детали поверхности во время рендеринга без их физического моделирования в геометрии.
Затем я выбираю опцию «Normal + Height + Mesh» в селекторе в правом верхнем углу 3D View.
Этот режим отображает комбинацию нескольких информационных каналов, влияющих на имитацию деталей на поверхности объекта. Без этих деталей поверхности объекта выглядели бы гладкими и недостаточно правдоподобными, особенно в деревянных областях.

В частности, в показанном на экране примере детали поверхности в основном реализованы в деревянных частях с помощью слоя «Fibers». Чтобы увидеть различия во внешнем виде поверхности с этими деталями и без них, достаточно включать или отключать соответствующие слои в панели Layers, наблюдая различия как в режиме «Normal + Height + Mesh», так и в режиме «Material» в 3D View. Различия становятся более заметными, когда объект освещён боковым, а не фронтальным светом.

Подобные эффекты также присутствуют в металлических частях и реализованы с использованием информационных каналов Height и Normal двух слоёв Iron Old: Iron и Edges. Как видите, эти Textures делают некоторые поверхности гораздо более интересными, тогда как без них они выглядели бы нереалистично из-за чрезмерной гладкости и плоскости.

Material — это набор информации, реализованный через изображения, часть из которых представлена в оттенках серого, а часть является цветной, проецируемый на поверхности объектов и комбинируемый согласно определённому методу, которым в нашем случае является парадигма PBR Metallic. Эта информация определяет, как поверхность объекта и источники света взаимодействуют для создания финального изображения.
PBR основан на характеристиках материалов, наблюдаемых в реальном мире и реализуемых в Computer Graphics путём правильного сочетания Textures, представляющих эти характеристики.
Метод PBR включает два workflows: Metallic и Specular. В этом tutorial мы рассмотрели пример с использованием workflow Metallic.
В workflow PBR Metallic первым шагом является определение с помощью Texture в оттенках серого того, какие части поверхности являются металлическими, а какие — нет.
В металлических областях информация Base Color, представляющая собой цветную Texture, определяет интенсивность и возможный цветовой оттенок specular reflections. В неметаллических областях Base Color представляет только истинный цвет поверхности без эффектов освещения или shading.
Roughness указывает степень шероховатости поверхности. При низких значениях Roughness отражения очень чёткие и хорошо определённые, а на металлической поверхности с белым базовым цветом материал ведёт себя как идеальное зеркало. По мере увеличения значения Roughness световые отражения становятся всё более рассеянными и размытыми. Roughness является противоположностью Glossiness.
Normal Textures, которые являются цветными изображениями, и Height Maps, представляющие собой специальные изображения в оттенках серого, позволяют имитировать наличие деталей поверхности во время визуализации и рендеринга объекта. Они полезны для экономии геометрии и, следовательно, вычислительных ресурсов, особенно в приложениях реального времени, таких как видеоигры или приложения виртуальной и дополненной реальности.
Итак, на этом мы остановимся в этом вводном videotutorial по базовым элементам PBR, Materials и Textures в Substance Painter, ограничившись этими первыми четырьмя информационными каналами. Я создам дополнительные tutorials, в которых отдельно проанализирую отдельные каналы, такие как Height и Ambient Occlusion, либо рассмотрю все каналы Material вместе, чтобы увидеть, как они комбинируются для создания конкретных эффектов в зависимости от ситуации.
Не стесняйтесь оставлять вопросы, комментарии и пожелания в комментариях к видео на YouTube. До встречи в следующий раз!