输出

RGB

说明

头发修饰(Sohrab Esfehani 提供)

 

标准头发是一个基于物理的着色器,它基于镜面反射的 d'Eon 模型和漫反射的 Zinke 模型渲染头发和毛发。可通过为基础颜色、粗糙度和折射率设置几个简单的参数来获取逼真的结果。

标准头发着色器设计为与 Arnold 的曲线形状节点一起使用,但无法很好地处理其他类型的形状。其他着色器(如 Lambert)也适用于曲线,但不能准确地模拟头发散射。

渲染头发时,建议使用“带状”(Ribbon) 模式曲线。“有厚度”(Thick)模式适用于特殊效果(如触角、意大利面等)和非透明着色。

纹理头发
将纹理连接到头发时,所需的工作流是将 melanin 设置为 0,并将纹理链接到 base_color通常,“漫反射”(Diffuse)可以保留为 0。 base_color 将影响次镜面反射和透射,就像 melanin 一样。它们只不过是控制头发中吸收的两种不同方式。可以将 melanin 视为一种更易于拾取适合人类头发的 base_color 的方式,但如果您有纹理,则可以禁用 melanin

无法直接将头发着色器参数映射到 standard_hair,这是由于着色模型的差别很大。镜面反射颜色、镜面反射 2 颜色和透射颜色仍可单独控制,但现在会自动使用菲涅尔保持能量守恒,而且需要变得更亮以获得相似的外观。漫反射组件需要变亮以与头发匹配。但是,为了获得精确的结果,建议完全不使用漫散射或镜面反射染色。 这些参数提供在物理上不准确的艺术控制,通常不再需要。

为了减少白色/浅色头发的噪波,需要增加镜面反射采样数和/或摄影机 (AA) 采样数。

主要参数

base

头发的亮度,base_color 的倍增。

base_color

头发的颜色。这会控制头发纤维内部的吸收,从而在灯光向周围散射时将该参数所代表的颜色提供给头发。请注意,对于金色或亮色头发,需要使用更多的镜面反射反弹来获得精确的结果。

建议base_color 保留为纯白色,并改用黑色素控件。这将保证颜色比较“合理”,也就是更像人类头发的外观。

此参数还可以连接到纹理贴图来改变头发颜色。

渐变纹理连接到 base_color

melanin

使用 melanin 参数可以通过控制头发中的黑色素数量来生成自然的头发颜色。颜色范围从金色(大约为 0.2)到红色和褐色(大约为 0.5)再到黑色(为 1.0)。要使用纹理贴图控制头发颜色,请将 melanin 设置为 0,并改用基础颜色。

melanin_redness

控制头发的红色。值越大,红褐黑色素(存在于红色头发中)相对于褐真色素的比例(0 到 1)越大。


melanin_randomize

随机化头发纤维中的黑色素数量,以获得不同的头发颜色(0 到 1)。

(黑色素(Melanin):0.5)

 

 

roughness

控制头发镜面反射和透射的粗糙度。值越小,镜面反射高光越清晰明亮;值越大,高光越柔和。

 

roughness_azimuthal 

anisotropic_roughness 处于启用状态时,使用此参数。azimuthal_roughness 值较低时,允许光线直接穿过;但当粗糙度较高时,将允许更多光线在头发内传播。随着 azimuthal_roughness 增加,强度将降低。

低/高 azimuthal_roughness

 

0.2(默认值)。 变换图像显示值为 1 时的效果。

 

roughness_anisotropic 

启用此选项可使用 azimuthal_roughness禁用时,roughness 将同时控制方位角和纵向分布。


ior

折射率。每根头发纤维都以绝缘圆柱体形式建模,头发根据 IOR 从纤维反射和透射到纤维中。IOR 值越小,正向散射越强;IOR 值越大,反射越强。

可以使用 1.4-1.6 以外的 IOR 值来渲染湿头发。

shift

头发纤维的缩放角度,从主镜面反射和次镜面反射远离最佳镜像方向偏移。为了获得逼真的人类头发结果,应当使用 0 度和 10 度之间的小角度(对于动物毛发,值可能会有所不同)。 对于合成头发(如尼龙假发),请使用值为 0 的 shift,因为纤维表面是光滑的。

变换图像

 

下面提供了一些建议值(摘自种族头发纤维的灯光散射研究”(Studies of light scattering from ethnic hair fibers)):

皮埃蒙特人:2.8

浅褐色欧洲人:2.9

深褐色欧洲人:3.0

印度人:3.7

日本人:3.6

中国人:3.6

非裔美国人:2.3

 

specular_tint

主镜面反射贡献的比例,它将与主镜面反射颜色相乘。

对于真实、干净的头发,颜色应设置为白色。对于真实的头发,建议将此值保留为默认值(1.0/白色)。

specular2_tint

透射贡献的比例,它将与透射染色相乘。对于真实、干净的头发,此颜色应设置为白色,以使用基础颜色对透射进行染色。 

对于真实的头发,建议将此值保留为默认值 (1.0)。



transmission_tint

透射贡献的比例,它将与透射染色相乘。对于真实、干净的头发,此颜色应设置为白色,以使用基础颜色对透射进行染色。

对于真实的头发,建议将此值保留为默认值 (1.0)。

下面的参数提供额外的艺术控制,但不是获得逼真的结果所需的。

diffuse

控制头发的漫反射,0 表示完全镜面反射散射,而 1 表示完全漫散射。对于典型的真实头发,无需漫反射组件。脏或损坏的头发可以使用漫散射进行近似模拟。

漫反射不应该用于真实头发。 真实头发没有漫反射组件(除非化妆、喷胶等)。 此参数在物理上不正确,提供它纯粹是为了获得额外的艺术控制。它不是获得逼真结果所需的。

 

diffuse_color

漫散射颜色。

此参数在物理上不正确,提供它纯粹是为了获得额外的艺术控制。它不是获得逼真结果所需的。

 

emission

自发光颜色的倍增。

此参数在物理上不正确,提供它纯粹是为了获得额外的艺术控制。它不是获得逼真结果所需的。

emission_color

用作自发光颜色的颜色。

此参数在物理上不正确,提供它纯粹是为了获得额外的艺术控制。它不是获得逼真结果所需的。

 

opacity

头发的不透明度。此参数默认设置为全白色,意味着头发完全不透明,为了获得最佳效果,应当将它保留为默认设置。

调整此值来降低头发的不透明度(也就是说,增加头发的透明度)时,有时可以让头发显得更加柔顺,但代价是显著增加渲染时间。如果未设置为全白色,请确保已在头发对象的“Arnold 参数”(Arnold Parameters)特性中禁用“不透明”(Opaque)标志,否则 Arnold 将绕过与透明度相关的计算来优化渲染时间。

此参数在物理上不正确,提供它纯粹是为了获得额外的艺术控制。它不是获得逼真结果所需的。


indirect_diffuse

仅从间接光源接收的漫反射灯光量。1 以外的值在物理上不正确。


indirect_specular

仅从间接来源接收的镜面反射度。1 以外的值在物理上不正确。

extra_depth

仅对此着色器添加额外的 specular_ray_depth。默认情况下金色头发会正确渲染,而无需先增加 GI_specular_samples

对于金色或亮色头发,必须使用大量的镜面反射反弹来准确地模拟多次散射。如果渲染成本太高,则可以改为将漫反射组件用作近似值。


extra_samples

基于每个着色器添加其他 GI 采样(d'Eon BSDF 镜面反射和透射(R、TT 和 TRT 路径)。 

 


  • No labels
Privacy settings / Do not sell my personal information / Privacy/Cookies