Назначение mib_cie_d в качестве параметра цвета светового шейдера точечного источника в 3ds max
Phenomena
Возможность назначения шейдеров в качестве параметров лежит в основе phenomena. Phenomenа расширяют концепцию шейдеров, позволяя строить из простых шейдеров более сложные, соединяя их в разветвленные цепочки (shader graph) посредством параметров. Для mental ray phenomena не отличается от обычных шейдеров - как и шейдеры, phenomena так же должны быть декларированы и имеют параметры, значения которых должны быть определены перед использованием. Как и шейдеры, phenomena должны иметь свой mi-файлы, которые хранят их "код". Но в отличие от шейдеров, phenomena не являются настоящими программами, поэтому для них не нужен dll (dso) -файл с программным кодом, реализующим их функции. По сути, phenomena просто описывают какие шейдеры, в какой последовательности и для каких параметров используются.
Для удобства написания и использования phenomena предусмотрены так называемые интерфейсные параметры. С их помощью phenomena передаются значения параметров извне, от пользователя. Также, важной особенностью phenomena является и то, что они позволяют управлять сложным набором шейдеров, каждый из которых обладает собственными параметрами, при помощи небольшого набора собственных параметров phenomena.
Назначение mib_cie_d в качестве параметра светового шейдера, в примере который мы рассмотрели чуть выше, может быть оформлено как phenomena.
declare phenomenon | color | "light_color_phen" |
| (scalar | "temp", |
| scalar | "inten") |
apply light | version 1 |
|
#"код" phenomena# |
|
|
shader | "color_light" | "mib_cie_d" ( |
| "temperature" | = interface "temp" , |
| "intensity" | = interface "inten") |
shader | "my_light" " | mib_light_point" ( |
| "color" | = "color_light", |
| "shadow" | on, |
| "factor" |
|
| "factor" | 0, |
| "atten" | off, |
| "start" | 0, |
| "stop" | 40) |
root | = "my_light" |
|
end declare |
|
|
Параметры phenomena "temp" и "inten" являются интерфейсными параметрами, то есть предназначены для передачи значений извне для параметров шейдера mib_cie_d: "temperature" = interface "temp" и "intensity" = interface "inten". Затем, шейдер mib_cie_d назначается в качестве параметра другого шейдера - mib_light_point, его значение определит цвет источника света (параметр "color"). Наконец, оператор root определяет значение, которое будет возвращать phenomena. В данном случае это значение шейдера my_light типа mib_light_point. Обратите внимание, что тип возвращаемого шейдером my_light результата и объявленный тип результата в декларации phenomena идентичны - color. Такая идентичность типов - обязательное условие.
Если написанный выше "код" сохранить в файл с расширением .mi, например "my_phen.mi", и подключить его при помощи директивы mi "путь_к_файлу\my_phen.mi" в rayrc или в standard.mi, то phenomena "light_color_phen" может быть использован в сцене как обычный световой шейдер:
$include | "my_phen.mi" |
................................................
shader | "my_light_color" | "light_color_phen" |
| ("temp" | ; = 2500, |
| "inten" | = 1 |
................................................
Более того, phenomena "light_color_phen" будет виден в 3ds max как обычный световой шейдер с двумя настроечными параметрами - температурой и интенсивностью.
Yandex.RTB R-A-252273-3
- Рендер простой сцены
- Часть 2. Options и ключи рендеринга командной строки
- Группа операторов сэмплирования
- Группа операторов рендеринга с использованием аппаратных возможностей видеокарты
- Группа операторов тесселяции
- Группа операторов Motion Blur
- Группа параметров Shadows
- Группа параметров Rendering Algorithms
- Группа операторов Feature Disabling
- Группа параметров Caustics
- Группа параметров Global Illumination
- Группа операторов Frame Buffer Control
- Группа параметров Scene Geometry
- Группа операторов Contours
- Группа операторов Diagnostic Modes
- Группа дополнительных операторов
- Ключи рендеринга командной строки ray.Exe
- Часть 3. Источники освещения
- Параметры шейдера ctrl_objectlights
- Только прямое освещение от протяженного источника-полусферы, имитирующего Sky light
- Часть 4. Геометрические объекты
- Тестовая сцена
- У стеклянного бокала visible off и в камеру он не виден. Но его тени и отражения в шейкере присутствуют
- В свойствах подложки установлено reflection 6 и refraction 6, поэтому ни шейкер, ни бокал ее не "видят"
- Для подложки refraction 12 и поэтому бокал ее не "видит", а reflection 3 и шейкер отражает подложку Обратная ситуация: для подложки refraction 3, reflection 12
- Fg Accuracy 280 сэмплов, радиусы 100 - 10 см
- У одного из объектов сцены finalgather 9, у остальных 3
- Противоположная ситуация: тумба не отражает вторичный свет, но сама его "видит"
- Расчет вторичного освещения методом fg, выполненный только для одного объекта сцены - шара. Fg accuracy: 1200 сэмплов на точку, минимальный радиус 1 см, максимальный - 10 см
- Часть 5. Камеры
- Часть 6. Материалы
- Конструкция стандартного материала
- Конструкция материала типа mental ray mental ray Connection стандартных материалов
- Шейдеры и параметры
- Назначение шейдеров в качестве параметров других шейдеров в 3ds max
- Назначение mib_cie_d в качестве параметра цвета светового шейдера точечного источника в 3ds max
- Phenomena в 3ds max виден как обычный шейдер заданного apply типа
- Is_mat_irradiance - шейдер расчета вторичного освещения индивидуально для материалов
- Интерфейс шейдера is_mat_irradiance
- Расчет освещения методом fg с глобальными настройками
- Расчет вторичного освещения с индивидуальными настройками fg для материала чайника и цилиндрической подставки (увеличено число сэмплов)
- Расчет вторичного освещения с индивидуальными настройками fg для материала чайника и цилиндрической подставки (увеличено число сэмплов) и материала конуса и земли (увеличены только радиусы)
- Рендеринг с Fast Sky