Материалы, текстуры и ноды / Майя
В этом разделе приведены ссылки на все материалы, текстуры и ноды, поддерживаемые в «Вердж3Д для Майи».
Данный раздел использует ссылки на официальную документацию «Автодеск», которая может не открываться у пользователей с российскими и белорусскими IP-адресами.
- Шейдеры поверхностей
- 2Д-текстуры
- Текстуры окружения
- Другие текстуры
- Вспомогательные ноды
- LookdevKit Utility Nodes
- Ноды Arnold
- aiStandardSurface
- aiAbs
- aiAdd
- aiAtan
- aiCheckerboard
- aiCompare
- aiComlement
- aiCross
- aiDivide
- aiDot
- aiExp
- aiFacingRatio
- aiFlat
- aiFraction
- aiIsFinite
- aiLength
- aiLog
- aiMatrixTransform
- aiMax
- aiMin
- aiMixShader
- aiModulo
- aiMultiply
- aiNegate
- aiNormalize
- aiNormalMap
- aiOslShader
- aiPow
- aiRaySwitch
- aiReciprocal
- aiShadowMatte
- aiSign
- aiSkyDomeLight
- aiSqrt
- aiSubtract
- aiTrigo
- aiTriplanar
- aiTwoSided
- aiUserDataColor
- aiUvProjection
- Производительность
Шейдеры поверхностей
Standard Surface
Этот шейдер может изображать множество материалов реального мира (такие как металлы, пластики, стекло, дерево, текстиль и др.) посредством использования физически-корректного освещения.
В «Вердж3Д» поддерживаются следующие настройки StandardSurface:
Base Panel
- Weight or (Base вход в Hypershade)
- Color or (Base Color вход в Hypershade)
- Metalness
Specular Panel
- Weight (Specular вход в Hypershade)
- Color (Specular Color вход в Hypershade)
- Roughness (Specular Roughness вход в Hypershade)
- IOR (Specular IOR вход в Hypershade)
Transmission Panel
- Weight (Transmission вход в Hypershade)
- Color (Transmission Color вход в Hypershade)
Coat Panel
- Weight (Coat вход в Hypershade)
- Roughness (Coat Roughness вход в Hypershade)
- Normal (Coat Normal вход в Hypershade)
Sheen Panel
- Weight (Sheen вход в Hypershade)
- Color (Sheen Color вход в Hypershade)
- Roughness (Sheen Roughness вход в Hypershade)
Emission Panel
- Weight (Emission вход в Hypershade)
- Color (Emission Color вход в Hypershade)
Geometry Panel
- Thin Walled
- Opacity
- Bump Mapping (Normal Camera вход в Hypershade)
Дополнительные настройки «Вердж3Д»
Вы можете настроить материалы StandardSurface с помощью следующих параметров, расположенных на панели Verge3D:
- Alpha Mode
- Режимы прозрачности: Auto, Opaque, Blend или Mask. См. руководство по прозрачности для дополнительной информации.
- Two Sided
- Делает ваш материал двухсторонним. По умолчанию «Вердж3Д» рендерит только лицевую сторону материалов, включите эту опцию, чтобы отрендерить и обратную сторону.
- Depth Write
- Рендерит глубину материала в буфере глубины. Используйте эту опцию для прозрачных материалов, чтобы сделать их рендеринг аддитивным.
- Depth Test
- Выполняет тест глубины при рендеринге материала. Отключение теста глубины полезно при рендеринге объектов внутри полупрозрачных объектов, чтобы предотвратить их вытеснение покрывающими объектами.
- Dithering
- Уменьшение артефактов-полос с помощью пиксельного дизеринга.
- glTF 2.0 Compatible
- Делает материал совместимым с glTF 2.0. Пройдите по ссылке для получения дополнительной информации.
Lambert
Простая, но эффективная нода, которая может быть использована для представления материалов без спекулярных отражений.
В «Вердж3Д» поддерживаются следующие настройки Lambert:
- Color
- Transparency
- Diffuse
- Bump/Normal Mapping
Также поддерживаются специфичные для «Вердж3Д» настройки. Смотрите выше для получения дополнительной информации.
Blinn, Phong, Phong E
В «Вердж3Д» эти материалы будут приблизительно соответствовать модели шейдинга PBR, поэтому они могут выглядеть по-другому по сравнению с вьюпортом «Майи».
Surface Shader
Используйте эту шейдерную ноду для создания полностью настраиваемых материалов. По сути, он просто передает параметр Out Color в рендер как есть.
2Д-текстуры
Bulge
Отображает узорчатый рисунок. Читайте здесь.
Checker
Отображает рисунок в виде шахматной доски. Читайте здесь.
Cloth
Отображает текстуру ткани. Читайте здесь.
File
Отображает текстуру из файла. Читайте подробнее здесь.
Grid
Отображает сетчатую текстуру. Читайте подробнее здесь.
Noise
2Д-рисунок шума. Поддерживается только тип шума Perlin Noise.
Ramp
Процедурный градиент. Читайте подробнее здесь.
Текстуры окружения
Env Sphere
Выводит текстуру, используя равнопромежуточную проекцию. Бывает полезна для рендеринга металлических поверхностей без использования сложных (и затратных в плане расчётов) физически-корректных алгоритмов. Например, вы можете подключить эту ноду на вход Surface Shader:
Другие текстуры
Layered Texture
Используется для создания многослойных текстур. Читайте здесь.
Вспомогательные ноды
Add Double Linear
Рассчитывает сумму двух входящих значений. Двойная точность не поддерживается в WebGL, поэтому эта нода ведёт себя аналогично операции Add ноды Float Math node.
Add Matrix
Рассчитывает сумму двух матриц.
Blend Colors
Смешивает Color 1 и Color 2 используя фактор Blend.
Bump 2d
Эта нода используется для создания карт нормалей и рельефных карт на низкополигональных моделях для улучшения их детализации.
«Вердж3Д» поддерживает только карты Bump и Tangent Space Normals (настройка Use As). Читайте подробнее об использовании этих карт здесь.
Clamp
Ограничивает вход Input между двумя значениями Min and Max.
Compose Matrix
Эта нода формирует матрицу 4x4 из заданных параметров трансляции, вращения и масштаба. Вход Shear не поддерживается.
Condition
Сравнивает First Term и Second Term и выбирает Color If True или Color If False на основе результата сравнения. Читайте подробнее здесь.
Decompose Matrix
Выполняет декомпозицию входящей матрицы на отдельные компоненты. Читайте подробнее здесь.
Four By Four Matrix
Эта нода используется для составления матрицы 4x4 из 16 значений c плавающей запятой.
Gamma Correct
Выполняет гамма-коррекцию над входящим значением.
Inverse Matrix
Инвертирует заданную матрицу 4x4.
Luminance
Конвертирует входящий цвет в черно-белый. Формула конвертации:
Multiply Divide
Выполняет операцию Multiply, Divide или Power над входящими значениями.
Mult Double Linear
Умножает два входящих значения. Поскольку вычисления с двойной точностью не поддерживаются WebGL, данная нода работает аналогично операции Multiply ноды Multiply Divide.
Mult Matrix
Умножает две или более матриц. В «Вердж3Д» с помощью одной ноды Mult Matrix можно перемножить не более 3-х матриц.
2d Placement
Выводит двухмерные текстурные координаты. Читайте подробнее здесь.
Reverse
Инвертирует цвет или вектор:
Sampler Info
Выводит информацию об отображаемом пикселе. Читайте подробнее здесь.
Set Range
Переназначает границы входа Value. Читайте подробнее здесь.
Transpose Matrix
Транспонирует заданную матрицу 4x4.
Unit Conversion
Конвертирует единицы измерения во входящем значении. Читайте подробнее здесь.
Vector Product
Рассчитывает операцию Dot Product, Cross Product, Vector Matrix Product или Point Matrix Product над входящими векторами. Читайте подробнее здесь.
Weighted Add Matrix
Рассчитывает взвешенную сумму входящих матриц. Читайте подробнее здесь.
LookdevKit Utility Nodes
Убедитесь, что у вас включен плагин LookdevKit, прежде чем использовать любую из этих нод.
Channels
Переназначает каналы во входящем цвете (и альфу). Читайте подробнее здесь.
Color Composite
Производит различные композитные операции над входящими цветами (и альфами): Add, Subtract, Mix, Multiply, Screen, Overlay, Difference, Dodge, Burn. Читайте подробнее здесь.
Color Condition
Проверяет входящее условие Condition на истину или ложь и устанавливает соответствующий выход Color/Alpha. Читайте подробнее здесь.
Color Constant
Выводит указанные значения Color и Alpha.
Color Logic
Производит математическую операцию над входящими цветами и устанавливает соответствующее значение Out Bool.
Color Mask
Применяет цветовую маску к входящему цвету/альфе. Читайте подробнее здесь.
Color Math
Производит математическую операцию над входящими цветами/альфой: сложение, вычитание, умножение, деление, минимум, максимум.
Float Composite
Производит различные операции над входными значениями: Add, Subtract, Mix, Multiply, Screen, Overlay, Difference, Dodge, Burn. Для получения подробных инструкций, обратитесь к документации «Майи».
Float Condition
Проверяет входящее условие Condition на истину или ложь и устанавливает соответствующее значение на выходе. Читайте подробнее здесь.
Float Constant
Выводит указанное значение.
Float Logic
Производит математическую операцию над входящими значениями и устанавливает соответствующее значение Out Bool.
Float Mask
Применяет маску к входящему значению. Читайте подробнее здесь.
Float Math
Производит математическую операцию над входящими значениями: сложение, вычитание, умножение, деление, минимум, максимум.
Premultiply
Умножает каналы цветности на альфу.
Unpremultiply
Выполняет деление каналов цветности на альфу.
Ноды Arnold
aiStandardSurface
Этот шейдер идёт в составе рендера «Арнольд» для «Майи» и очень похож на StandardSurface.
Поскольку Standard Surface лучше поддерживается в рендере «Вьюпорт» 2.0 и не требует установки плагина Arnold, мы рекомендуем использовать его при создании контента для «Вердж3Д». Единственная причина использования «Арнольд»-версию — сохранение совместимости с существующими сценами.
aiAbs
Рассчитывает модуль цветового/векторного входа.
aiAdd
Рассчитывает сумму цветов/векторов.
aiAtan
Вычисляет двухаргументный арктангенс над входящими векторами. Читайте подробнее здесь.
aiCheckerboard
Отображает рисунок в виде шахматной доски. «Вердж3Д» поддерживает все свойства ноды aiCheckerboard кроме Filter Strength и Filter Offset.
aiCompare
Сравнивает входящие значения. Читайте подробнее здесь.
aiComlement
Дополняет входящий цвет. Нода работает аналогично ноде reverse node.
aiCross
Рассчитывает векторное произведение двух векторных входов.
aiDivide
Делит Input 1 на Input 2.
aiDot
Рассчитывает скалярное произведение двух векторных входов.
aiExp
Рассчитывает экспоненту цветового входа Input.
aiFacingRatio
Рассчитывает направление на камеру для отображаемого пикселя, а именно скалярное произведение нормали к поверхности и вектора направления на камеру. Параметры Bias, Gain, Linear и Invert не поддерживаются.
aiFlat
Примитивный шейдер, работающий аналогично Surface Shader. Он передаёт цвет Color в Out Color как есть.
aiFraction
Вычисляет дробную часть входа, например:
aiIsFinite
Проверяет что входящее является конечным числом (т.е. не равно бесконечности).
aiLength
Рассчитывает длину векторного входа.
aiLog
Рассчитывает логарифм входа Input по основанию Base.
aiMatrixTransform
Выполняет трансформацию текстурных координат с использованием матрицы трансформации. Полезно для изменения позиции/поворота/масштабирования текстур без необходимости изменения геометрии.
aiMax
Рассчитывает максимум двух входов.
aiMin
Рассчитывает минимум двух входов.
aiMixShader
Смешивает два шейдера с использованием фактора Mix Weight. Для этой ноды поддерживают оба режима смешивания blend и add. Переключатель Add Transparency не поддерживается.
aiModulo
Рассчитывает значение входа Input по модулю Divisor.
aiMultiply
Умножает два входа.
aiNegate
Инвертирует входящее значение.
aiNormalize
Нормализует входящий вектор
aiNormalMap
Модифицирует нормаль Normal в соответствии с картой нормалей, подданной на вход Input и вектором тангенты Tangent. Читайте подробнее здесь.
aiOslShader
Нода для создания пользовательских OSL-шейдеров.
aiPow
Вычисляет значение Base, возведённое в степень Exponent.
aiRaySwitch
Когда используется совместно с aiSkyDomeLight, эта нода позволяет разделить рендеринг фона и освещения окружения. Нодовое дерево, подключённое к входу Camera будет использоваться для рендеринга фона, тогда как вход Diffuse Reflection будет использоваться для окружения.
Данный материал не поддерживается ни во вьюпорте «Майи», ни в рендере «Арнольд». Используйте предпросмотр «Вердж3Д», чтобы посмотреть как он работает.
aiReciprocal
Вычисляет обратное значение входа Input:
aiShadowMatte
В «Вердж3Д» эта нода используется для вырезания 3Д-объектов, а также для наложения цветных полупрозрачных теней на фоне сцены.
aiSign
Рассчитывает знак значения Input.
aiSkyDomeLight
Используется для создания освещения окружения на основе изображения. Смотрите раздел освещение и рендеринг для дополнительной информации.
aiSqrt
Рассчитывает квадратный корень входящего значения.
aiSubtract
Вычитает Input 2 из Input 1.
aiTrigo
Рассчитывает тригонометрическую функцию значения Input.
aiTriplanar
Текстурная развёртка, рассчитываемая посредством проекции на 3 оси.
Текстурные входы данной ноды работают только с нодой aiImage.
aiTwoSided
Рендерит вход Front на передней стороне и вход Back на задней стороне геометрии.
aiUserDataColor
Используется для рендеринга вертексных цветов в «Вердж3Д». Имя сета с вертексными цветами назначается в параметре Attribute.
Данное имя можно найти в редакторе Color Set Editor «Майи»:
Данная функциональность используется в демо-приложении Vertex Colors (исходные файлы доступны в магазине ассетов).
aiUvProjection
Размещает текстуру на трёхмерных моделях посредством различных алгоритмов проецирования: планарного, сферического, цилиндрического, кубического и т.д.
Текстурные входы данной ноды работают только с нодой aiImage.
Производительность
Standard Surface (или aiStandardSurface), являясь единственным выбором для создания красивых и реалистичных рендеров, тем не менее, требует больше вычислительной мощности от GPU и замедляет загрузку приложений. Это особенно актуально для сцен с большим количеством таких материалов.
Для повышения производительности вы можете настроить параметр Texture Resolution на aiSkyDomeLight.
Остались вопросы?
Задайте их на нашем форуме!