材质混合模式
概述材质混合模式及其如何影响材质的渲染。
混合模式说明当前材质的输出如何与背景中已绘制的内容进行混合。更专业地说,混合模式允许您控制引擎在其他像素之前渲染此材质时,如何将此材质(来源颜色)与帧缓冲区中已有的内容(目标颜色)混合。
为了说明这一点,我们设置了包含一台摄像机和两个对象的简单场景。我们将查看第一个对象,并了解当我们更改混合模式时,该对象如何影响背景。不透明
"不透明"(Opaque)混合模式最简单,并可能是您最常使用的模式。它定义了光线无法通过或穿透的表面。此模式适用于大部分塑料、金属、石头以及较大比例的其他表面类型。遮罩
"遮罩"(Masked)混合模式用于您需要以二元(开/关)方式选择性地控制可见性的对象。例如,假定一个材质要模拟铁丝网围栏或格栅。某些区域看起来像是固体,而其他区域不可见。此类材质适合于"遮罩"(Masked)混合模式。
记住透明与不渲染之间的差别十分重要。透明表面(例如玻璃)仍会以反射(镜面反射)形式与光线交互。以"遮罩"(Masked)模式剔除的像素无非是不绘制;在这些区域看不到任何反射。如果您想要保留反射或镜面反射外貌,那么最好使用"半透明"(Translucent)混合模式,或考虑建立分层材质。 另外,因为这些特性不会在遮罩的区域中进行渲染,所以完全不会进行计算,这进而提高了 GPU 的性能。
使用"遮罩"(Masked)混合模式时,您需要特别注意 不透明蒙版剪辑值(Opacity Mask Clip Value) 属性。此属性包含 0-1 标量值,用于控制将不透明蒙版纹理的哪个值用作分界点,这个分界点之上所有 较暗 的值都不会进行渲染。
在以上示例中,材质的 双面(Two Sided) 属性设置为True(选中),这就是您能看到盒子内部的原因。
并且,尽管此处显示的是交互式示例,但 不透明蒙版剪辑值(Opacity Mask Clip Value) 属性并非设计成可在运行时进行更改。
半透明
"半透明"(Translucent)混合模式用于需要某种形式的透明度的对象。这种混合模式的工作方式如下:接收一个"不透明度"值或纹理,并将其应用于表面,以使黑色区域完全透明,白色区域完全不透明,而这两者之间各种梯度的阴影将产生相应的透明度级别。这意味着,使用灰色的"不透明度"纹理可以产生显示为半透明的对象,从而仅让部分背景穿透显示。
使用半透明材质时,一个重要的注意事项是它们目前不支持镜面反射。这意味着您在表面上不会看到任何反射。但是,可使用立方体贴图通过类似于以下的网络来模拟此类反射:
叠加型
"叠加型"(Additive)混合模式无非获取材质的像素,并将其与背景的像素相加。这与Photoshop中的线性减淡(添加)混合模式非常相似。这表示不会进行暗化;因为所有像素值都添加到一起,因此黑色将直接渲染为透明。这种混合方式适合于各种特殊效果,例如火焰、蒸汽或全息图。
与"半透明"(Translucent)混合方式相同,这种混合方式不支持镜面反射(即,反射)。这种混合的叠加型性质可能意味着您不会以任何方式使用这种混合,但您可以使用上文中"半透明"(Translucent)小节中所示的"立方体贴图"方法来模拟类似于反射的效果。
调制
"调制"(Modulate)混合模式无非将材质的值与背景的像素相乘。这种行为与Photoshop中的正片叠底模式混合模式非常类似。
在上图中,材质的混合模式已设置为调制(Modulate),且明暗处理模型已设置为不照亮(Unlit)。
"调制"(Modulate)混合模式最适合于某些粒子效果。但请注意,此模式不支持照明或单独半透明。