Shader Graph10-Min, Max, Clamp, Saturate节点

打开UE,新建Material叫做DemoMinMaxClamp,双击打开

一、Minimum节点,两个值比较取较小的。

Min的含义是,红框的0.5为参数B的值,1.0为白色圆形的值,下面的0.5为背景颜色值。图片中每个像素值与0.5进行比较,选择较小的值。如果A的值1,那么结果就是0.5。如果A的值0.4,那么结果是0.4。所以结果就是全是灰色的背景色。

 当把B的值改为0.6的时候,就是下面的结果

 

二、Max节点,两个值比较取较大的值

B的值为1时,结果是下面的样子。

B的值为0.8时,结果是下面的样子。

当参数值为0.8时,0.8与1.0比较结果为1.0,0.8与0.5比较结果为0.8,所以背景会明显的发亮一些。

 

三、Clamp节点,限定取值范围

下面有两个颜色节点,使用Lerp节点做一个混合,使用VertexNormalWS和Mask这两个节点操作,加强了z方向上的值,我们回忆一下Lerp的Alpha的值是当Alpha为0时,结果为A,当Alpha为1时,结果为B。

当我们切换Preview为立方体的时候,可以看到更明显,左图是从下向上看,右图是从上向下看。最上面是青色的原因是通过Mask进行了加强所以,Lerp显示了B占比大的混合结果。最下面是黄色的原因是通过Mask减弱了,Lerp显示了A占比大的混合结果。

如果我们把Clamp删除,那么还是Preview为立方体,从下向上看时候,最下面是橙色。这是因为最下面的法线坐标为-1,所以A的值反而得到了加强。

我们将Preview转为球体看一下效果,没有Clamp的情况

有Clamp的情况

 

 四、我们看一下Unity中的情形。

 

 这里需要注意的是Unity中有Color节点表示颜色。还有Unity的向上的方向是y轴,所以Split选择G。

猜你喜欢

转载自blog.csdn.net/zhuziying99/article/details/130125437