使用网格体绘制工具可以非常轻松地混合三个单独的纹理,但这需要在材质中进行一项特殊设置。请考虑以下图表:
下面是设置的概览:
- 每个颜色通道(RGB)有其各自的线性插值表达式。
- 每个纹理插入对应Lerp节点的B输入端。
- 与纹理1对应的Lerp连接到材质中,并且其Alpha将由顶点颜色中的红色(Red)通道驱动。
- 与纹理2对应的Lerp连接到与纹理1对应的Lerp的A输入端,并且其Alpha将由顶点颜色中的绿色(Green)通道驱动。
- 与纹理3对应的Lerp连接到与纹理2对应的Lerp的A输入端,并且其Alpha将由顶点颜色中的蓝色(Blue)通道驱动。
- 纹理1还会环绕回来,连接到第3个即最后一个Lerp的A端。这样纹理1就成了默认纹理。
设置完毕之后, 网格体权重绘制工具(Mesh Weight Painting Tool) 应该会处于活动状态,并且 纹理权重类型(Texture Weight Type) 设置应该会设为 RGB(三纹理)(RGB (Three Textures)) 。
下面是此材质的示例,首先在RGB模式下查看网格体,显示设置好的顶点颜色。请注意,在此设置中, 红色 对应纹理1, 绿色 对应纹理2, 蓝色 对应纹理3。
最终效果如下:
请注意,第一张图中顶点颜色为红色(纹理1)的地方没有变化。这是因为纹理1也连入了第三个Lerp表达式的A输入端(参见上文),使其成为了默认纹理。从本质上讲,你以纹理1为起始点,可以根据需要在其上面绘制纹理2和3,或随时在后两者之上重新绘制纹理1。
如果你要反复设置这种材质,那么最好部署一个自定义材质函数。