次表面(Subsurface)

次表面散射 (SSS) 用于模拟灯光进入对象并在其表面下方散射的效果。并非所有灯光都会从表面反射回来。其中有些灯光将穿透到照明对象的表面下方。这些灯光将会被材质吸收并在内部散射。其中一部分散射灯光将返回到表面之外,并对摄影机可见。这称为“次表面散射”或“SSS”。要实现大理石、皮肤、树叶、蜡和牛奶等材质的逼真渲染,SSS 必不可少。此着色器中的 SSS 组件将使用暴力式光线跟踪方法计算得出。

注意:

粒子不支持 SSS(仅适用于多边形网格)。

重要信息:

您必须确保几何体法线指向正确的方向,否则 SSS 将无法正确渲染。

当复制致密但半透明的材质(如塑料)时,次表面散射十分重要。例如:

权重(Weight)

在漫反射与次表面散射之间混合。当设置为 1 时,仅有次表面光方向分布球;当设置为 0 时,仅有漫反射光方向分布球 (Oren-Nayar)。在某些情况下(例如,皮肤渲染),为了将模糊的 SSS 光方向分布球与较清晰的漫反射光方向分布球结合使用,将二者混合会非常有用。

它可用于执行诸多操作,例如,以不同纹理混合面绘制等的遮罩,或通过将相同纹理同时连接到 “基础颜色”(Base Color)“次表面颜色”(Subsurface Color) 并更改混合因子来改变锐度。

返回顶部

颜色(Color)

次表面散射效果的反射颜色。SSS 介质在内部进行调整,以便在散射后产生这种有效的颜色。

返回顶部

半径(Radius)

灯光在吸收或散射之前在次表面传播的平均距离,也称为“平均自由程”(MFP)。此参数影响灯光在再度散射出曲面前在曲面下可能传播的平均距离。增大此值,次表面散射的外观将变得更模糊和半透明,减小此值则会使外观更加致密和不透明。

注意:

可以使用“次表面半径比例”(Subsurface Radius Scale)颜色分别为每个颜色分量指定 MFP,将其乘以 “次表面半径”(Subsurface Radius)。

半径值越大,灯光在内部散射得越深,从而形成更加模糊的半透明次表面散射外观。减小此值则会使外观更加致密。半径为零基本上会形成不透明的漫反射外观。

增加半径值可以彻底改变材质的外观,使材质从看起来像皮革变为看起来像大理石。SSS 非常依赖比例。您需要根据模型的大小调整半径倍增。如果使用默认的 SSS 设置进行渲染,则可能会获得错误的结果。或者,调整场景比例也可以获得类似的结果。

返回顶部

半径比例(Radius Scale)

次表面半径相乘的 RGB 比例因子。这会使每个 RGB 颜色通道的平均自由程 (MFP) 不同。例如,粘土或皮肤等材质在红色通道中的 MFP 应比在绿色和蓝色通道中的 MFP 大。

默认颜色值用于表示瑞利散射(例如,为牛奶提供淡蓝色)。

提示:

渲染皮肤时,您应使用类似 1.0、0.35、0.2 的颜色,表示红色应该散射得最深,绿色和蓝色应该散射得较浅。这将替换皮肤的三层式工作流(深层、中层和浅层),使深层为红色。将 “次表面半径比例”(Subsurface Radius Scale) 的 R 通道设置为较大值即对应这种情况。

注意:

“次表面半径比例”(Subsurface Radius Scale) 颜色和渲染颜色之间没有直接对应关系,因为颜色会驱动每个通道的“平均自由程”,即灯光在每个通道中相对溢出的距离。

返回顶部

各向异性(Anisotropy)

相位函数各向异性控制散射灯光的角度分布,范围从 -1(完全背向散射)到 1(完全正向散射)。对于各向同性介质,默认值为 0,这意味着灯光在所有方向均匀散射。正值沿灯光方向向前偏移散射效果(产生更深的散射和更强的“一线光明”效果),而负值则将散射向后偏移,朝向灯光(产生较浅的散射)。

以下示例演示了结合使用薄壁,对散射材质的薄片进行建模的效果。在这种情况下,正向散射会通过正各向异性增强,或者通过负各向异性减少。

返回顶部

对象之间的 SSS

可以将多个对象标记为属于同一 SSS“集”,使照明在对象边界之间变得模糊。常见的用例可能是牙齿和牙龈几何体之间的模糊。 通过将常量字符串用户数据 sss_setname 添加到该集内对象上的相同值,可以启用这一点。

返回顶部