讲Gradient(Dynamic)节点之前,不得不先说一下Gradient Map节点。
官方文档:The Gradient node remaps the grayscale values from the input, based on a fully customizable color or grayscale gradient.
大体意思就是:Gradient节点可以把灰色渐变重新映射成灰度图或者颜色图,经常被用于Noise转变成颜色图。
而Gradient(Dynamic)节点跟Gradient节点的原理是一样的,只不过Dynamic节点需要一张渐变图(下图B输入)作为映射的来源,这张渐变图可以是灰度图,也可以是颜色图。
A、B两个输入通道
Dynamic节点只读取B输入的一行或者一列像素作为映射来源,可以通过“Gradient Orientation”选择横向(Horizontal)或者纵向(Vertical)像素。
横向渐变(Horizontal):
拿一个圆形灰度图作为A输入,一个左红右青的颜色图作为B输入,Gradient Orientation设置为横向,最后映射的结果是:A输入黑色阶部分被红色替换,白色阶部分被蓝色替换。
横向渐变
由此可见:Gradient Orientation设置为横向的时候。B输入是自左向右进行采样的。
纵向渐变(Vertical):
把B输入旋转90°,上青下红,Gradient Orientation设置为纵向,最后映射的结果是:A输入黑色阶部分被青色替换,白色阶部分被红色替换。
纵向渐变
由此可见:Gradient Orientation设置为纵向的时候。B输入是自上而下进行采样的。
渐变定位(Gradient Input Position)
渐变定位控制B输入的采样位置,可以通过修改渐变定位移动采样位置。
用一张上半部分左红右青,下半部分左黄右蓝的颜色图作为B输入,Gradient Orientation为横向,渐变定位从0增加到1,采样像素从上向下移动。
黑色方框内为采样像素,箭头表示渐变定位移动方向
当渐变定位在[0,0.5)区间的时候,B输入的上半部分生效。
渐变定位在[0,0.5)区间
当渐变定位在(0.5,1]区间的时候,B输入的下半部分生效。
渐变定位在(0.5,1]区间
由于图片像素是偶数,正中间位置为空值,所以当渐变定位是0.5的时候,最后映射的结果介于两者之间。
渐变定位为0.5
把B输入旋转90°,Gradient Orientation为纵向,渐变定位从0增加到1,采样像素从左向右移动。
黑色方框内为采样像素,箭头表示渐变定位移动方向
当渐变定位在[0,0.5)区间的时候,B输入的左半部分生效;当渐变定位在(0.5,1]区间的时候,B输入的右半部分生效;当渐变定位是0.5的时候,最后映射的结果介于两者之间。
渐变定位从0增加到1
巧用Gradient Dynamic节点可以生成很多有趣的图案,标题图就是使用这个节点制作的。
标题图节点连接
开始的时候说过,Dynamic节点跟Gradient节点的原理是一样的,所以Dynamic可以实现的效果,Gradient也可以实现。如下图所示设置Gradient节点的渐变条
Gradient Map渐变条
最终跟使用Dynamic节点的效果一致
2个节点的映射结果对比
再比如:
一片蜘蛛网
问:A输入如果没有渐变,连上节点之后会有效果吗?
答:因为Gradient一系列的节点都是根据渐变进行映射的,如果没有渐变,只会出现单一颜色。
问:A输入渐变图中有非渐变的部分,非渐变的部分也会受到影响吗?
答:Gradient一系列节点是对整个图进行颜色映射,所以即使有非渐变部分,也是会受到影响,只不过非渐变部分只会出现单一的颜色,不会有渐变过渡。
以上是本人的个人理解,如果解释不当之处,欢迎指正。
文章首发:知乎-FaithTong