Render-passes Рендер пассы в Maya

Render Passes — Рендер Пассы в Maya, mental ray. Часть 1

Render-passes-in-maya

Пришло время разобраться с послойным рендером. В данной статье будем рассматривать рендер пассы, сделанные в mentalray.

Для начала разберемся, что такое рендер пассы и для чего они нужны. И так render pass с английского переводится как проход визуализации и используется в композитинге для более тонкой настройки картинки. Скажем для того чтобы изменить цвет пиджака у персонажа, или предмета, убрать тень или изменить ее насыщенность, вырезать ненужную деталь в сцене, для этого мы обращаемся к помощи рендер пассам.

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

 

 

 

Изображение

 

Render Pass

 

 

Описание значения

 

 

 

 

 

2d Motion Vector

2d Motion Vector

 

Относительное движение (в растровых координатах XY) объекта в вашей сцене. Другими словами этот рендер-пасс нужен для того, чтобы программа композитинга, знала насколько далеко, каждый пиксель продвинулся из кадра A в кадр B, из кадра B в кадр C и т.д. При этом вектор выражен в нормализированных пикселях.

 

При композе этот пасс используют когда требуется сделать движение объекта размытым.

 

Render Passes - motion vector 3d

3D Motion

Vector

 

Вектор просчитывается в мировых осях XYZ. В Mental Ray под Maya трёхмерный Motion Vector выражен в особом внутреннем пространстве.

 

Beauty

Beauty Ambient

Ambient

Render Passes - Рендер пасс - Ambient

Ambient Raw

Render Passes - Рендер пасс - Ambient Raw

 

Ambient

 

AmbientRaw

 

Ambient Material Color

(он же Ambient Raw)

 

 

AmbientДополнительное освещение поверхности. В Maya это цвет материала умноженный на цвет средового освещения.

 

Ambient Raw в отличие от Ambient выдает цвет который мы указали в настройках шейдера Ambient Color

 

PS. Для визуализации этого паса я в каждом шейдере установил Color— по умолчанию

Ambient Color — разные цвета.

Если в Ambient Color оставить черный цвет по умолчанию то и объект будет черного цвета. Причем Ambient Raw передает оригинальные цвета выставленные в Ambient Color.

 

 

Ambient Irradiance

 

Количество окружающего света, принимаемого поверхности.

 

 

Render Passes - Рендер пасс - AO (Ambient Occlusion)

Ambient Occlusion

 

Модель затенения, позволяющая добавить реалистичности изображению за счёт вычисления интенсивности света, доходящего до точки поверхности. В отличие от локальных методов, как например затенение по Фонгу, ambient occlusion является глобальным методом, то есть значение яркости каждой точки объекта зависит от других объектов сцены. В принципе, это достаточно отдалённо напоминает глобальное освещение.

Этот пасс работает если вы поставили галочку в render settings на против Ambient Occlusion

 

 

Render Passes - Рендер пасс - Beauty

 

Beauty

 

Финальный цвет высчитанный при помощи Mental Ray в Maya.  Beauty-пасс это полная сборка всех пассов.

 

 

Render Passes - Рендер пасс - Beauty No Refraction

 

 

Beauty Without Reflections or Refractions

 

 

Финальный цвет высчитанный при помощи Mental Ray в Maya.  Beauty Without Reflections or Refractions пасс это полная сборка всех пассов за исключением пассов отражений и преломлений света.

 

 

Render Passes - Рендер пасс - ZDepth

 

Camera Depth / Camera Depth Remapped

 

По простому Z —Depth, пасс глубины. Данный пасс просчитывает карту отдаленности объектов от камеры.

 

 

Render Passes - Рендер пасс - Coverage

 

Coverage

 

Mental Ray Coverage покрытие буфера кадра. Этот буфер кадра предлагает только силуэт охват. Self-покрытия в настоящее время не поддерживается.

 

 

Custom Color /

Custom Depth /

Custom Label /

Custom Vector

 

Используется в сочетании с writeToColorBuffer, writeToDepthBuffer, writeToVectorBuffer и writeToLabelBuffer шейдеров для записи данных в буфер кадров. Или создает свой собственный проход, если вы используете пользовательские шейдеры.

С помощью данных пассов можно настроить почти любой пасс который вам нужен. CustomColor очень универсальный инструмент.

                           

 

Render Passes - Рендер пасс - Diffuse

 

Diffuse

 

Диффузный цвет материала с тенями.

 

 

Render Passes - Рендер пасс - Diffuse No Shadow

 

Diffuse Without Shadows

 

Диффузный цвет материала без теней. Ментал реевский шейдер не видит данный пасс (см. таблицу ниже, какие пассы видят mentalray шейдеры)

 

 

Render Passes - Рендер пасс - Diffuse Material Color

 

Diffuse Material Color

 

Обеспечивает постоянный диффузный цвет или текстуру диффузного цвета за исключением света.

 

Заливает объект чистым цветом который указан в Color или выводит только текстуру.

 

 

Render Passes - Рендер пасс - DirectIrradiance

 

Direct

Irradiance

 

Неотражённый свет, приходящий в каждый сэмпл поверхности.

Карта источников света. В сцене два источника цвета, красный и синий. Также их можно разделить сделав по отдельности. Таким способом можно настроить каждый источник света на свое усмотрение.

 

 

Render Passes - Рендер пасс - DirectIrradiance No Shadow

 

 

Direct

 Irradiance

Without

 Shadows

 

 

Тоже самое что Direct Irradiance только без теней.

 

 

Render Passes - Рендер пасс - Glow Source

 

Glow Source

 

Этот пасс просчитывает эффект свечения который мы настраиваем в самом шейдере.

 

 

 

Incandescence

 

Аддитивные цвета.

 

 

Render Passes - Рендер пасс - IncandenceLN 

Incidence (Light/Normal)

 

Измеряет разницу между направлением светового луча и нормалью поверхности 3D-объекта. Если нормаль поверхности направлена к свету, то значение равно 1, а если нормаль направлена в обратную сторону от светового луча — значение равно 0.

 

 

Render Passes - Рендер пасс - Indirect

 

Indirect

 

Отражённый свет просчитанный Final Gather, Global Illumination и каустическим эффектом.

 

 

Light Volume

 

Вычленяет волюметрические (объёмные) эффекты света. В качестве примера можно привести световой конус.

 

 

Render Passes - Рендер пасс -IncidenceCN

Material Incidence (Camera/Normal)

 

Измеряет разницу между лучом (направлением секущих плоскостей) виртуальной камеры и нормалью поверхности. Если нормаль поверхности направлена к камере, то значение равно 1, а если нормаль направлена в обратную сторону от камеры — значение равно 0. Любое отклонение между лучом камеры и нормалью более 90 градусов интерпретируется как 1.

 

NormalCamMaterial

Render Passes - Рендер пасс - NormalCamMaterial

 

NormalObjMaterial

Render Passes - Рендер пасс - NormalObjMaterial

 

NormalWorldMaterial

Render Passes - Рендер пасс - Normal World Material

Material Normal (Camera Space /

Object Space / World Space)

 

Интерполированная нормаль поверхности. Вы можете выбрать координатную сетку между Camera space, Object space и World space. Если выдавливание (Bump mapping) применено к шейдерной сетке, оно тоже будет отражено в этом пассе.

 

 

Render Passes - Рендер пасс - Matte

 

Matte

 

Это альфа-канал, исключающий прозрачность/непрозрачность. Этот пасс используется в композитинге для масок рендер-слоёв.

 

 

Normalized 2D Motion Vector

 

Относительное движение (в растровых координатах XY) объектов в сцене. Другими словами, в зависимости от того как далеко каждый пиксель движется между кадром А и B. Пикселю присваивается значение от 0 до 1. Статические объекты выражены значением  0.5,0.5.

 

 

Object Incidence (Camera/

Normal)

 

Тот же Material Incidence (Camera/Normal) за исключением того что он не поддерживает наложение рельефа.

 

 

NormalCam

Render Passes - Рендер пасс - Normal Cam

 

NormalObj

Render Passes - Рендер пасс - Normal Obj

 

NormalWorld

Render Passes - Рендер пасс - Normal World

 

Object Normal (Camera Space / Object Space / World Space)

 

 

 

 

Они же в Passes

NormalCam

NormalObj

NormalWorld

 

 

Тот же Material Normal (Camera Space / Object Space / World Space) за исключением того что он не поддерживает наложение рельефа.

 

 

Object Volume

 

Извлекает все объектно-ориентированные объемные эффекты, например, дым, который содержится в стакане объекта. Также включает в себя объем частиц, меха, и жидкости.

 

 

Render Passes - Рендер пасс - Opacity

Opacity

 

Объекты непрозрачности, которые являются производными от прозрачность / преломления. В композиции, непрозрачность объекта можно управлять независимо от матового слоя визуализации. Альфа канал отсутствует.

PS. Прозрачность материала обозначается градацией цвета от белого до черного

 

 

Render Passes - Рендер пасс - Shadow Raw

Raw Shadow

 

Тот же Shadow пасс, но рассчитан только по отношению к освещенности в сцене.

 

 

Render Passes - Рендер пасс - Reflection

 

Reflection

 

Пасс отражения. Этот пасс включает в себя само отражение, первичное отражение, вторичное отражение и отражение окружающей среды.

 

 

 

 

 

Reflected Material Color

 

Отраженный цветовой параметр материала. Чистое, постоянное отображение цвета или отображение текстуры. Используется как отражающий matte, чтобы определить где нужно явно показать отражения (цветные или не цветные)

 

 

Render Passes - Рендер пасс - Refraction

 

Refraction

 

Пасс преломления. Включает, первичное преломление и преломление окружающей среды.

 

 

Render Passes - Рендер пасс - Refraction Material Color

Refraction Material Color

 

Параметр прозрачности цвета  материала. Чистое, постоянное преломление  цвета или отражение текстуры. Используется как преломление / прозрачность matte чтобы определить, где нужно явно показать преломление (цветные или не цветные).

 

 

Scatter

 

Эффекты рассеивания, возникающие в результате материалов рассеяния. Атрибуты (например, Scatter Radius, Scatter Color)

Не SSS пасс.

 

 

Scene Volume

 

Извлекает из сцены объемные эффекты, такие как туман, слоистый туман, дымка, и так далее….

 

Render Passes - Рендер пасс - Shadow

Shadow

 

Рендер пасс теней.

 

 

 

Render Passes - Рендер пасс - Specular

 

Specular

 

Зеркальное затенение. Отражающие компоненты реализованы по разному в зависимости от шейдера. Например Phong, PhongE, Blinn, и Anisotropic materials производят зеркальное затенение по разному

 

Render Passes - Рендер пасс - Specular No Shadow

Specular

Without

Shadows

 

Тот же Specular только без теней.

 

 

Translucence

 

Показывает заднее затенение на лицевой поверхности

 

 

Translucence Without

Shadows

 

Подобно Translucence но без теней.

 

 

Render Passes - Рендер пасс - UVpass

 

UVPass

 

UVpass преобразует UV значение Красного и зеленого канала и создает растровую версию UV пространства. Использовать UVpass, вы можете  при композитинге для замены текстуры в 3d визуализации, без необходимости повторного рендера.

Пометка: При визуализации этого прохода  требуется сохранить файл в  формате OpenEXR

 

PS.На картинке.

1. Оригинальный 3dрендер

2. Заменяемая текстура

3. Отрендеренный UVпасс

4. Текстура вставленная в 3dрендер при композе.

 

 

 

 

 

 

WPP

World Position

 

Воссоздание 3dобъекта по рендер пассу WPP

 

World Position Pass преобразует позицию (X, Y, Z) в значения R, G, B. Используйте этот пасс для восстановления 3dобъекта в  рабочем процессе композитинга.

Пометка: При визуализации этого прохода  требуется сохранить файл в  формате OpenEXR

 

 

 

Формула сложения пассов

Формула пассов. Рендер пассы - Render Passes

 

Простая версия.

Beauty = diffuse_result + indirect_result + spec_result +

                refl_result + refr_result + tran_result +

                add_result

 

_______________________________________________

 

Более продвинутая

Beauty = diffuse_level * (diffuse_raw + (indirect_raw * ao_raw)) +

                spec_level * spec_raw +

                refl_level * refl_raw +

                refr_level * refr_raw +

                tran_level * tran_raw +

                add_result

Материалы которые видят пассы

Как оказалось mental ray  не видит большинство своих шейдеров. То есть видеть видит и даже рендерит, но пассы не делает.

В данном случае если вы уже использовали шейдеры mentalray которые не поддерживают пассы, следует сделать следующее.

Зайти в каждый материал и апдейтнуть до версии с допиской passes

 

Update passes

 

Вот и все теперь ваш шейдер поддерживает пассы.

А почему некоторые объекты черного цвета?

По идеи шейдеры с допиской passes должны поддерживать пассы, но и тут подвох, надо смотреть, какой шейдер какие пассы поддерживает. Внизу приведен список материалов и пассов.

 

Шейдер

Поддержка пассов

mia_material_x_passes

 

Споддержкой pass contribution map: Diffuse, Diffuse Without Shadows, Direct Irradiance, Direct Irradiance Without Shadows, Raw Shadow, Shadow, Specular, Specular Without Shadows, Translucence, Translucence Without Shadows.

 

Без поддержки pass contribution map: Incandescence, Indirect, Reflection, Refraction

 

Partial pass contribution map support (Diffuse pass matches pass conribution maps): Beauty

 

 

mi_metallic_paint_x_passes

 

 

Ambient Material Color, Beauty, Diffuse, Direct Irradiance, Indirect, Reflection, Specular

 

misss_fast_shader_x_passes

 

Beauty, Diffuse, Direct Irradiance, Specular

 

mi_car_paint_phen_x_passes

 

Ambient Material Color, Beauty, Diffuse, Direct Irradiance, Indirect, Reflection, Specular

 

Raw пассы

Насколько я понял из своих тестов, дописку Raw носят те пассы которые выводят чистый пасс без какой либо примеси сторонних пассов.

 

Пассы в ручную

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

 

IDpassid пасс в maya создается в ручную, он используется как маска для выбранных объектов. Как создать такой пасс я писал в статье Создание ID-Pass в Maya

Background pass — получения отдельного пасса из IBL читаем статью BackgroundPass

 

PS. Статья еще не совсем полная, хочется узнать более подробно про каждый пасс. Как с ним работать? Для чего он нужен? Поэтому я буду писать продолжения в несколько частей, а также обновлять эту по мере поступления и изучения информации.

Всем спасибо за интерес к данной статье, подписывайтесь на сайт, а также не забывайте про лайки если статья вам была полезна.

 

 

 

 

 

 

Комментарии:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *