本文探讨了金属性(metalness)的重要性以及为什么我们将金属性参数添加到 V-Ray 标准材质中,使 V-Ray 更加支持 PBR 工作流程。
了解金属性
本文探讨了金属性的重要性以及为什么我们将金属性参数添加到Vray标准材质中,使Vray
更加支持 PBR 工作流程。
让我们澄清一下事实吧
“基于物理的渲染(Physically Based Rendering)”这个专有名词 – 简称 PBR – 本身意味着 PBR 中使用的材质定义基于真实物理。有些人还认为这表示其他着色模型不是基于真实物理;其实这个说法是错的。
虽然实时渲染着色模型不一定基于真实物理,但其他光线追踪器(如 V-Ray)一直以来都是基于物理的。而 PBR 着色模型因实时渲染而变得非常流行,原因有两个:
PBR 确实是基于物理的。
PBR 材质需要更少的变量——也就意味着更少的纹理图来定义材质。
由于内存资源对于电子游戏产业十分重要,因此 PBR 模型自然而然地变得非常受欢迎并且有非常大量的资源。
PBR 着色模型与其他基于物理的着色模型(例如 V-Ray 使用的着色模型)的主要区别在于 PBR 如何描述反射。大多数人都知道这个多出来的 “金属性(metalness)”参数。如果你查看大多数物理书籍,你找不到任何材质的“金属性 ” 的描述。那么,让我们来仔细研究这个术语的含义。
关于金属性
事实上,两种不同类型的材质之间有很大差别:绝缘体(dielectric)和导体(conductive)。绝缘体又叫电介质,电阻率极高,导体可导电。绝缘体包括玻璃,塑料,木材,陶瓷,皮革…等。导电材质包括钢,铜,金 – 换句话说:就是金属。
绝缘体(dielectric)
导体(conductive)
在物理学中,导电材质具有不同的反射特性,这就是为什么大多数人认为导电材质具有高反射性而没有漫射特性。如果您的渲染器材质基于绝缘体材质体系,则通常是去除漫反射并为着色器提供高菲涅耳(fresnel)数值来表现金属 – 这个数值往往远高于您在物理书中看到的数值(稍后详细说明之)。
当在着色器中添加导体作为选项时,这可以使人们更容易呈现金属。令大家困惑的是,材质要不是绝缘体就是导体;并不存在介于中间的状态。金属性这个词,以及它是 0 到 1 的变量 而非 0 或 1 状态意味着存在不同程度的金属性。 在现实世界中,根本没有这种材质。PBR 的许多用户认为控制物体的反射率都应该通过 0 到 1 之间的金属性值来完成,并且折射率(IOR)值对于所有材质都是常数;这在物理上是不准确的。不同的材质具有不同的 IOR 值,而且材质不是绝缘体,就是导体(译者注:不会有介于两者之间的)。
PBR,电玩游戏和 Substance Designer
PBR 已经在 Unity 和 Unreal 等工具的实时渲染领域变得非常流行,游戏产业也是。这个行业另一个广受欢迎的工具是 Allegorithmic 公司出品的 Substance Designer。Substance 允许艺术家绘制适合 PBR 着色的贴图并包含金属性贴图(metalness map)。
然而,不仅仅是游戏设计师爱用 Substance。Substance 也被用于建筑可视化,VFX 和其他使用 V-Ray 等工具进行 CG 渲染的行业。因此,许多用户希望将这些贴图与 V-Ray 一起使用。因此,在 V-Ray Next 中,我们决定在 V-Ray 标准材质中添加 Metalness 参数,以便更支持 PBR 工作流程。
您的 PBR 工作流程
既然我们已经建立金属性应该是全有或全无的状态,这样的观念了,那么让我们看看如何正确设定材质。在制作绝缘体材质时,漫反射颜色控制着色的兰伯特亮度(Lambertian,或译作理想散射)部分,反射由几个变量控制:漫反射颜色作为整体漫反射量的乘数;IOR 表示前向法在线(forward-facing normals)的反射率与掠射法线(glancing normals, 也称为 Fresnel, 菲涅耳)的比值;和总体散射量的光泽度(或是roughness, 粗糙度的相反),具体取决于您选择使用的 BRDF 模型。
当切换到金属材质时,通过使金属性(Metalness)值1来完成,这个变量具有不同的含义:
由于金属中没有漫反射颜色,漫反射颜色变成所谓的基色(base color) – 或反照率颜色(albedo color)。
反射应设置为纯白色,以获得适当的反射率和能量守恒; 没有这个,掠射角永远不会是 100% 反射 – 如果遵守能量守恒就应该是 100%。
反射强度有多大仍然是由和以往一样菲涅尔 IOR 值来控制,您会发现它的影响非常微妙,因为整个金属材质反射都是很强的——调起来的感觉有点像您把两种不同的反射质感混在一起。
光泽度控制它的光滑程度; 但是,如果您使用粗糙度图(例如 Substance 所产生的),您可以将 V-Ray 材质切换为粗糙度 – 这个属性是光泽度的反相。
以下举些例子
现在我们已经大致了解金属性的工作原理,让我们来看看几个例子及其设置:
以下是基于 RefractiveIndex.info 网站上的一些金属示例:
金属性纹理贴图
正如我们之前提到的,许多用户可能更倾向于使用金属性(Metalness)参数,因为这些是他们已有的贴图。因此,金属质感贴图更像是两种不同类型材质之间的蒙版(mask):电介质或导电材质。
以下示例显示了我们如何获得两种不同的材质:一种具有金属性并设置为 1; 另一个使用 Substance Designer 设置为 0。您将看到我们可以使用单个着色器和更少的贴图创建两种不同的材质:基色(base color,),金属性(metalness),法线(normal)和粗糙度(roughness)。
让我们来回顾一下
PBR 材质非常受到大家欢迎,让大家在许多不同类型的渲染器中使用贴图,尤其是实时渲染解决方案。但许多用户还希望继续将这些相同的纹理与 V-Ray 一起使用。新增的 Metalness 参数添加到 V-Ray Next 的标准材质中,用户可以沿用其 PBR 工作流而无需使用全新的着色器。
Diffuse 255,255,255; Reflection 255,255,255; Glossiness 1; IOR 1.5
Diffuse 0,0,0; Reflection 255,255,255; Glossiness 1; IOR 1.5.
Diffuse 0,0,0; Reflection 255,255,255; Glossiness 1; IOR 2
Diffuse 243,201,104 (gold); Reflection 255,255,255; Glossiness 1; IOR 1.35.
Diffuse 46,46,46 (18% gray); Reflection 255,255,255; Glossiness 0.6; IOR 1.5.
折射率 正如我们之前提到的,IOR 在创建基于物理的材质时仍然发挥着重要作用。因此,在创建材质时仍要将 IOR 考虑进去。 而 RefractiveIndex.info 这个网站是查询不同材质其 IOR 的重要资源。可是,其数值套到 V-Ray 着色器中并不完全适用。因此,Vlado 创建了此图表协助简化转换:金属名称 | 基色 (diffuse) | Reflection color | IOR | Metalness | 基色 (web) | 基色 (sRGB) | |||||||
红 | 绿 | 蓝 | 红 | 绿 | 蓝 | ||||||||
银 | 252 | 250 | 249 | 255 | 255 | 255 | 1.082 | 1 | fefefd | ||||
金 | 243 | 201 | 104 | 255 | 255 | 255 | 1.35002 | 1 | fbe6ab | ||||
铜 | 238 | 158 | 137 | 255 | 255 | 255 | 1.21901 | 1 | f8cfc2 | ||||
铝 | 230 | 233 | 235 | 255 | 255 | 255 | 1.002 | 1 | f5f6f6 | ||||
铬 | 141 | 141 | 141 | 255 | 255 | 255 | 1.03 | 1 | c5c5c5 | ||||
铅 | 167 | 168 | 176 | 255 | 255 | 255 | 1.016 | 1 | d4d5d9 | ||||
铂 | 243 | 238 | 216 | 255 | 255 | 255 | 1.024 | 1 | faf8ee | ||||
钛 | 246 | 239 | 208 | 255 | 255 | 255 | 1.086 | 1 | fcf9ea | ||||
钨 | 236 | 213 | 193 | 255 | 255 | 255 | 1.007 | 1 | f7ece2 | ||||
铁 | 226 | 223 | 210 | 255 | 255 | 255 | 1.006 | 1 | f3f1eb | ||||
钒 | 241 | 228 | 199 | 255 | 255 | 255 | 1.034 | 1 | faf3e5 | ||||
锌 | 223 | 221 | 218 | 255 | 255 | 255 | 1.011 | 1 | f1f0ef | ||||
镍 | 226 | 219 | 192 | 255 | 255 | 255 | 1.016 | 1 | f3efe2 | ||||
汞 | 199 | 198 | 198 | 255 | 255 | 255 | 1.013 | 1 | e5e5e5 | ||||
钴 | 174 | 167 | 157 | 255 | 255 | 255 | 1.031 | 1 | d8d4cf |