PBR Texture Maps: Полный список (и что делает каждая из них)

pbr texture maps list cover
  • Материалы PBR используют несколько карт, а не одну текстуру.
  • Base Color, Normal, Roughness и Metallic — это основные карты.
  • AO, Displacement, Emissive и Opacity при необходимости добавляют реалистичность.
  • Metallic/Roughness — это стандартный workflow сегодня для большинства новых assets.
  • Tripo AI может генерировать готовые для PBR текстуры по prompts или references.

Текстуры PBR, или Physically Based Rendering, не представляют собой одно изображение. Это набор специализированных карт, и каждая карта управляет отдельным свойством того, как поверхность выглядит и реагирует на свет. Самые важные карты PBR — это Base Color, Normal, Roughness и Metallic, но полноценный PBR asset может включать и другие типы карт в зависимости от сложности.

Понимание того, что делает каждая карта и что означает черный и белый цвет на каждом grayscale-изображении, отличает подбор настроек материала наугад от точного понимания того, что именно нужно изменить. Спрос на готовые к production 3D assets быстро растет: по прогнозу Grand View Research, мировой рынок цифровых 3D assets достигнет примерно 60,6 млрд USD к 2030 году. В этом руководстве рассматриваются все основные типы карт текстур PBR, что именно они контролируют и как создать или сгенерировать каждую из них.

Что такое карты текстур PBR?

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

pbr texture maps list what are pbr texture maps

PBR-материал похож на набор инструкций. Одна карта управляет цветом. Другая управляет имитацией неровностей поверхности. Еще одна управляет резкостью отражений. Еще одна сообщает рендереру, является ли поверхность металлической или неметаллической. Движок считывает их вместе и вычисляет, как должен выглядеть материал при разных условиях освещения.

Существует два основных PBR-workflow. Наиболее распространенный сегодня — это Metallic/Roughness workflow, используемый в современных real-time pipeline, таких как Unreal Engine, Unity, Principled BSDF в Blender, glTF и USD. Более старый Specular/Glossiness workflow все еще встречается в некоторых VFX и legacy rendering pipeline.

Для большинства новых проектов сначала стоит освоить Metallic/Roughness. Этот workflow начинается с четырех основных карт.

Четыре основные PBR-карты

Четыре основные PBR-карты — это Base Color, Normal, Roughness и Metallic. Эти карты составляют основу большинства современных 3D-ассетов. Если вы создаете игровой объект, персонажа, product render, AR-модель или asset для ecommerce, именно эти карты вы будете использовать чаще всего.

pbr texture maps list the core four pbr maps

Базовый цвет (Albedo)

Карта базового цвета, часто называемая Albedo, хранит исходный цвет и рисунок поверхности. Она не должна содержать запеченное освещение, сильные тени, блики, отражения или ambient occlusion. Думайте о ней как о цвете материала при нейтральном освещении.

Например, карта базового цвета деревянного стола содержит коричневую текстуру древесины. Окрашенный металлический шлем содержит цвет краски и рисунок. Бетонная стена содержит серый цвет поверхности и пятна, но не сильные направленные тени.

В объяснении через градации серого черный означает, что поверхность почти не отражает видимый цвет, а белый означает очень яркий цвет поверхности. На практике Base Color обычно представляет собой полноцветную RGB-текстуру, а не черно-белую карту.

Эта карта называется Albedo в физически корректных workflow, потому что она представляет цвет, который поверхность отражает без влияния освещения. В более старых workflow она может называться Diffuse или Color Map, но в настоящем PBR термин “Diffuse” может вводить в заблуждение, потому что старые diffuse-карты часто включают нарисованные тени.

Полезное правило для художников: избегайте чистого черного и чистого белого, если только материал действительно этого не требует. Очень темные материалы часто должны оставаться выше значений 30–50, потому что чистый черный при многих схемах освещения может выглядеть как дыра в пространстве.

Normal Map

Normal Map — это сине-фиолетовая текстура, которая делает поверхность детализированной без добавления дополнительной геометрии. Она не перемещает вершины. Вместо этого она меняет то, как свет реагирует на поверхность, создавая иллюзию выпуклостей, царапин, пор, переплетения ткани, заклепок, трещин или резного текста.

Normal maps выглядят синими и фиолетовыми, потому что они кодируют направление поверхности. В normal map в tangent space красный и зеленый каналы хранят боковое направление поверхности, а синий канал — направление наружу. Преимущественно сине-фиолетовый цвет означает “плоская поверхность”. Небольшие сдвиги цвета сообщают renderer’у, что нужно искривить освещение так, как если бы у поверхности были мелкие детали.

Вот почему normal maps так полезны в играх. Low-poly модель может выглядеть намного богаче, если у нее есть хорошая normal map. Персонаж с 20,000 poly может казаться намного более проработанным в скульптинге, потому что карта имитирует морщины, вмятины на броне, швы и поры кожи.

Normal maps обычно создаются путем запекания деталей с high-poly скульпта на low-poly модель в таких инструментах, как Blender, Substance 3D Painter или Marmoset Toolbag. Их также можно генерировать из данных высоты, фотографий или AI-инструментов для текстурирования.

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

Roughness Map

Roughness Map управляет тем, насколько резкими или размытыми выглядят отражения на поверхности. Обычно это карта в градациях серого, где черный означает гладкость, а белый — шероховатость.

Черный, или roughness 0.0, создает четкие зеркальные отражения. Представьте полированный хром, чистое стекло, глянцевый пластик или только что навощенный автомобиль. Белый, или roughness 1.0, создает матовую поверхность с мягкими, рассеянными отражениями. Представьте мел, необработанный бетон, сухую глину или неотделанную древесину.

Большинство реальных материалов находятся между этими крайностями. Шлифованный металл может быть около 0.3. Человеческая кожа может находиться около 0.5. Изношенная кожа может быть около 0.6. Грязный пластик, запыленная краска и старая резина часто содержат вариации roughness по поверхности.

Распространенная ошибка новичков — оставлять всю Roughness Map равномерно-серой со значением 0.5. Реальные поверхности редко бывают настолько однородными. Например, лезвие меча не должно иметь одинаковую roughness везде. Полированная кромка может быть более гладкой, рукоять — более шероховатой, а пятна ржавчины — значительно более шероховатыми, чем чистый металл.

В более старом workflow Specular/Glossiness вместо этого может использоваться Glossiness Map. Glossiness — это величина, обратная Roughness:

Roughness = 1 - Glossiness

Metallic Map

Metallic Map сообщает renderer’у, ведет ли себя поверхность как металл или как неметалл. Обычно это карта в градациях серого, но в большинстве workflow имеют значение только два значения: черный и белый.

Черный означает неметалл, также называемый dielectric. Пластик, дерево, кожа, резина, ткань, камень, керамика и окрашенные поверхности обычно должны быть черными в Metallic Map. Эти материалы отражают нейтральные белые или серые блики и при этом сохраняют свой Base Color как диффузный цвет поверхности.

Белый означает металл. Золото, медь, сталь, алюминий, латунь и хром должны использовать белые metallic-значения. Металлы ведут себя иначе, потому что у них нет той же диффузной цветовой реакции, что у неметаллов. Их Base Color становится оттенком их отражений. Вот почему золото отражает золотистый свет, а медь — красновато-оранжевый.

Распространенная ошибка — делать все немного metallic. Не выставляйте для пластика, кожи, leather, ткани или окрашенного дерева metallic 0.2 только потому, что хотите, чтобы это выглядело “круто”. Обычно это создает физически некорректные материалы.

Большинство чистых материалов должны иметь либо 0, либо 1. Промежуточные значения, такие как 0.3–0.7, встречаются редко и обычно представляют переходные поверхности, например корродированный, загрязненный, окисленный или частично изношенный металл.

Расширенные PBR-карты

Основные четыре карты покрывают большинство asset’ов, но дополнительные карты могут добавить реализма или поддержать особые поверхности. Вам не нужна каждая карта для каждого материала. Используйте их только тогда, когда asset действительно в них нуждается.

pbr texture maps list extended pbr maps

Ambient Occlusion (AO)

Карта Ambient Occlusion, или AO Map, представляет собой текстуру запечённых теней в оттенках серого, которая передаёт мягкие контактные тени в трещинах, углах, складках, швах и других тесных участках.

Белый цвет обозначает полностью открытые области, а чёрный указывает на сильную окклюзию или глубокую тень.

AO не является освещением в реальном времени. Она вычисляется заранее и сохраняется в текстуре, после чего умножается на Base Color или подключается ко входу AO шейдера.

Без AO поверхности могут выглядеть плоскими или разрозненными. С AO углы и контактные области сразу получают глубину. AO-карты можно запекать в Blender, Marmoset Toolbag, Substance 3D Painter или генерировать из геометрии mesh.

Height / Displacement Map

Height Map или Displacement Map — это текстура в оттенках серого, которая смещает геометрию во время рендеринга. В отличие от normal maps, которые имитируют детали через освещение, displacement физически изменяет форму поверхности.

Чёрный обычно обозначает самую низкую точку, белый — самую высокую, а средне-серый — неизменённый уровень поверхности.

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

Компромисс заключается в производительности. Displacement требует плотной геометрии или подразделения во время рендеринга, поэтому он чаще встречается в кино, VFX, archviz и высококачественном рендеринге, чем в играх, чувствительных к производительности.

Emissive Map

Emissive Map заставляет выбранные участки поверхности светиться независимо от освещения сцены. Она может содержать полноцветную информацию о свечении или использовать значения в оттенках серого для управления яркостью, в то время как цвет задаётся шейдером.

Чёрный означает отсутствие эмиссии, а белый соответствует максимальной интенсивности.

Типичные применения включают LED, неоновые вывески, sci-fi панели, светящиеся руны, трещины с лавой, экраны, голограммы, магические эффекты и светящиеся глаза. В движках реального времени emissive maps также могут запускать bloom.

Opacity / Alpha Map

Opacity Map, или Alpha Map, управляет прозрачностью поверхности.

Чёрный означает полную прозрачность, белый — полную непрозрачность, а серый создаёт частичную прозрачность, если это поддерживается материалом.

Opacity maps обычно используются для листьев, hair cards, заборов, кружева, decals, рваной бумаги, стекла и других сложных поверхностей с вырезами.

Alpha cutout использует бинарную видимость и эффективен для игр. Alpha blending поддерживает мягкую прозрачность для стекла, дыма, матовых материалов и эффектов затухания.

Workflows Metallic/Roughness и Specular/Glossiness

Многие новички путаются, потому что в разных руководствах используются разные названия карт. Причина проста: существует два PBR workflow.

pbr texture maps list metallic roughness vs specular glossiness workflows
Metallic/RoughnessSpecular/Glossiness
Использование в индустрииПо умолчанию в Unreal Engine, Unity, Blender Principled BSDF, glTF и USDУстаревший или специфичный для отдельных пайплайнов
Основные картыBase Color + Metallic + RoughnessDiffuse + Specular Color + Glossiness
Управление металличностьюКарта Metallic использует 0 для неметалла и 1 для металлаКарта Specular хранит цвет и интенсивность отражения
Резкость отраженийRoughness: 0 = гладкая поверхность, 1 = шероховатаяGlossiness: 1 = гладкая поверхность, 0 = шероховатая
Лучший сценарий использованияНовые проекты, игровые ассеты, движки реального времениСовместимость с устаревшими системами или специфичные VFX-пайплайны

Если вы сегодня начинаете создавать новый ассет, выбирайте Metallic/Roughness. Это современный стандарт по умолчанию, и его проще всего переносить между движками и инструментами.

pbr texture maps list metallic roughness vs specular glossiness workflows 2

Если кто-то дает вам Glossiness Map, а вашему шейдеру нужна Roughness, инвертируйте значения в градациях серого:

Roughness = 1 - Glossiness

Это означает, что черный становится белым, белый становится черным, а средне-серый остается средне-серым.

Как получить PBR Texture Maps

Понимать, что делают PBR maps, — это только половина процесса. Вам также нужен способ их создавать. Есть три основных подхода.

pbr texture maps list how to get pbr texture maps

Первый способ — это ручное рисование в таких инструментах, как Substance 3D Painter, Blender Texture Paint или Mari. Этот метод дает вам максимальный контроль над царапинами, грязью, износом кромок, узорами ткани и переходами между материалами. Однако у него также самый высокий порог входа, и на текстурирование одного ассета может уйти от 4 до 20 часов.

Второй вариант — скачивать бесплатные наборы текстур из библиотек, таких как Poly Haven, AmbientCG и CC0Textures. Эти сайты предоставляют высококачественные бесшовные PBR-материалы для распространенных поверхностей, таких как дерево, кирпич, бетон, металл и камень. Ограничение в том, что эти материалы универсальны и могут не подойти для конкретного робота, оружия, продукта или существа.

Третий подход — генерация с AI. Tripo AI Texturing может за секунды сгенерировать полный набор PBR-карт, включая Base Color, Normal, Roughness и Metallic, напрямую на вашей 3D-модели по текстовому запросу. Вы можете описать желаемый внешний вид, предварительно просмотреть сгенерированную текстуру и доработать ее перед экспортом.

После генерации 3D texture upscaling от Tripo повышает разрешение карт и детализацию поверхности, делая результат более подходящим для рендеринга в высоком разрешении, production assets и детализированной 3D-печати.

Часто задаваемые вопросы

Какие бывают карты в PBR-текстурах?

Полноценный PBR-ассет обычно использует четыре основные карты: Base Color для цвета поверхности, Normal для имитации детализации поверхности, Roughness для резкости отражений и Metallic для поведения металла или неметалла. Дополнительные карты, такие как Ambient Occlusion, Displacement, Emissive и Opacity, добавляются, когда поверхности нужна большая реалистичность или специальные эффекты. В большинстве современных проектов используется workflow Metallic/Roughness.

Что такое PBR-карты?

PBR-карты — это текстурные изображения, которые кодируют определенные свойства поверхности для Physically Based Rendering. Вместо того чтобы запекать цвет, свет, тень и отражения в одно изображение, PBR хранит каждое свойство отдельно, чтобы рендерер мог вычислять реалистичное освещение в разных окружениях. Это делает один и тот же ассет более консистентным в разных инструментах и сценах.

Как создаются PBR-текстуры?

PBR-текстуры создаются вручную, запеканием из high-poly геометрии, сканированием реальных поверхностей, скачиванием библиотек текстур или генерацией с помощью AI. Художники часто используют такие инструменты, как Substance 3D Painter, Blender, Marmoset или Mari. AI-инструменты, такие как Tripo AI, могут генерировать наборы PBR-текстур по запросу или входной модели, что ускоряет ранний этап создания материалов.

Нужны ли мне все PBR-карты для каждого ассета?

Нет. Большинству ассетов нужны четыре основные карты: Base Color, Normal, Roughness и Metallic. Добавляйте AO для сложных форм, Emissive для светящихся частей, Opacity для вырезов или прозрачности и Displacement для поверхностей крупным планом, где важна реальная геометрическая глубина. Для большинства игровых ассетов достаточно четырех основных карт плюс AO.

Заключение

Карты PBR-текстур проще понять, когда вы знаете, что именно контролирует каждая из них. Base Color отвечает за цвет поверхности, Normal имитирует геометрические детали, Roughness управляет резкостью отражений, а Metallic сообщает рендереру, ведет ли себя поверхность как металл или как неметалл. Вместе эти карты дают движку рендеринга информацию, необходимую для моделирования реалистичного освещения.

Если ручное создание всех этих карт звучит слишком сложно, Tripo AI Studio поможет за секунды сгенерировать полный набор текстур, готовых для PBR, по запросу или reference workflow. Варианты тарифов смотрите на Tripo AI Pricing.

Похожие статьи

Поделиться статьей

Создавайте что угодно в 3D

Нажмите ниже, чтобы присоединиться к миллионам 3D-творцов. Попробуйте генерацию моделей сверхвысокой детализации и первоклассные PBR-текстуры.