iray 渲染元素由“光线路径表达式”指定。
“光线路径表达式”(LPE) 是描述特定光线路径的正则表达式。在 iray 渲染器的渲染元素界面中,这些表达式将仅选择特定灯光分布,以构建特定元素。
“光线路径表达式”现在可以参考灯光和几何体对象。
要完成操作,“光线路径表达式”必须以灯光源事件开头,并以视点事件结束(或以相反顺序)。
E 指定视点事件。在 3ds Max 中,这是活动视口的观察点(对于渲染而言,通常是摄影机视图)。
灯光源事件可以指定灯光类型:
灯光类型 | 含义 |
---|---|
L | 任何灯光 |
Lp | 点灯光 |
La | 区域灯光 |
Le | 环境或背景 |
例如,生成“灯光: 区域”元素的 LPE 是 La.*E,其中星号 (*) 将匹配任意数量的“区域灯光”事件。“灯光: 环境”元素的 LPE 是 Le.*E。
生成“Mtl: 自发光”事件的 LPE 是 LE。换句话说,它将渲染光源,而不是灯光与对象的交互。
交互事件描述光线和场景中的材质之间的交互。在“光线路径表达式”中,交互事件包含在尖括号中,并包含两个组成部分:类型和模式。
事件本身将描述光线和对象之间的交互。有三种交互事件类型:
事件类型 | 含义 |
---|---|
R | 反射 |
T | 透射 |
V | 体积交互 |
该模式描述了发生的散布。有三种可能的模式:
事件模式 | 含义 |
---|---|
D | Diffuse(漫反射) |
G | 光泽 |
S | 高光 |
例如,
<RD>
... 描述了简单的漫反射。
“点”(.) 字符是匹配任何类型或模式的通配符。
<R.>
... 描述了事件的所有反射。
可以将 <R.> 缩写为 R。这适用于仅指定一个类型或模式的任何事件。
看缩写代码时请注意:<RD> 描述了单个漫反射,而 RD 描述了反射事件后会紧跟着漫反射散布事件。
若要匹配多个事件,可以将其放在括号 ([]) 中,以形成一个集合。
[RT] 组合了反射和透射事件。[DGS] 组合了所有散布模式。因此 <[RT][DGS]> 是包含反射、透射、所有类型的散布的事件,体积交互的事件除外。
也可以通过以脱字符 (^) 开头来从集合中排除类型或模式。
<[^T].> 从事件中排除透射,这等效于 <[RT][DGS]> 或只是 <[RT].>。
您可以使用多个操作符来组合子表达式。操作符允许使用以下子表达式(A 和 B 表示子表达式;m 和 n 表示整数值):
操作符 | 含义 |
---|---|
AB | 首先匹配 A,然后匹配B |
A|B | 与 A 或 B 匹配 |
A? | 选择性匹配 A。A 可能不会显示在场景中。 |
A* | 匹配零个或多个 A 实例 |
A+ | 匹配一个或多个 A 实例 |
A{n} | 匹配 n 个连续显示的 A |
A{n,m} | 匹配 n 到 m 个 a 实例 |
A{n,} | 匹配 n 或更多个 A 实例 |
将根据以下优先级计算操作符:
?、*、+、{}
AB
|
您可以使用括号 (()) 对子表达式进行分组并更改计算顺序。将首先计算括号内的子表达式。