我们都知道substance designer是一款基于节点的程序化材质生成功工具,这个笔记主要就是简单记录下各常用基础节点的功能。

假定读者像笔者一样,已经了解sd的3d视图的基本操作,和各类材质,资产的静态-动态导入方式,且具备一定的绘图/修图基础。
不然在阅读一些笔记时可能会出现难以理解的情况。

想了解全部的节点参数细节,请详阅adobe的官方文档。
node liberary-Adobe documents
在这里插入图片描述
我的sd版本如下:
在这里插入图片描述

1. Blend节点/混合节点

混合(blend)节点是基础中的基础节点,主要实现两个贴图间的计算。
输入参数为三个:前景色(颜色/灰度),背景色(颜色/灰度)和遮罩。
注意遮罩只对背景发挥作用。
在这里插入图片描述
常用参数如下:
第一个参数控制混合计算强度,强度为0则不发生混合技术。
第二个参数为混合模式,参考PS的图层模式。
第三个参数往往在接入了遮罩贴图时才能使用。
在这里插入图片描述

模式-复制copy

对单个像素来说,即是单纯地使用前景色覆盖背景色。
在这里插入图片描述
使用了遮罩的情况
在这里插入图片描述

模式-添加(线性减淡)add

实现两个颜色的相加
在这里插入图片描述
RGB模式下,红绿拉满的计算结果为黄色
在这里插入图片描述

模式-减去subtract

实现逻辑为背景减去前景
在这里插入图片描述

模式-正片叠底(乘法)multiply

乘法不考虑前后顺序
在这里插入图片描述

模式-添加子项addsub

前景中色值大于0.5的部分,执行加法/添加模式。
前景中色值小于0.5的部分,执行减去模式。
在这里插入图片描述
样例的效果上来说,即前景中色值小于0.5的部分被筛掉了。
在这里插入图片描述

模式-最大值/最小值max/min

即选择前后景中对应的最大值/最小值。
最大值模式如下:
在这里插入图片描述
最小值模式如下:
在这里插入图片描述

模式-切换switch

在效果上与复制类似,即不透明度从0-1时,倾向于显示后景色-前景色。
在这里插入图片描述
在这里插入图片描述

模式-划分/除法divide

即后景色除以对应的前景色。
可见当前景色值较小时,对应后景色部分的亮度被显著地提升了。
在这里插入图片描述

模式-滤色screen

目前我学习中比较少用到的节点,逻辑上,使进行混合的两个颜色先取反,再相乘,再取反。所以效果上,为正片叠底模式的取反。
在这里插入图片描述
与正片叠底模式(下方第一图)的对比
在这里插入图片描述

在这里插入图片描述

模式-叠加overlay

同样是分支模式混合节点。
判断基准为后景色,大于0.5的部分使用滤色模式,小于0.5的部分使用正片叠底模式。
在这里插入图片描述

模式-柔光soft light

也是少用的节点。
基准是前景色,前景色中亮度超过50%的颜色会使后景色对应部分变亮,低于50%的颜色会使后景色变暗。
在这里插入图片描述

2. Curve/曲线节点

跟PS的曲线调整功能类似,用于调整画面的明暗对比度,或是去获取一些割裂性的效果。
即通过调整明暗曲线的方式,调整输入图像的明暗情况。
也可以通过rgb通道独立调整的方式,进行单独的调整。

要是没有绘画/修图的理论基础,基本上不好理解这个节点的逻辑。

这个明暗曲线描述的就是输入输出的色值的对应关系。
即是说,在默认的曲线(或者说直线)基础上,输入/输出的色值是1/1对应的,通过拉动这个曲线的值,最终实现映射关系的变化,从而改变对比度。
在这里插入图片描述
以这张原神的插画为例(注意原图被压缩为1/1尺寸),我们去调整它的曲线。
在这里插入图片描述

在这里插入图片描述
曲线管线调整如下,即是说红框部分对应的明度信息的映射关系,我们把它由暗改为亮。
在这里插入图片描述
可以看到原本的暗部的部分,被加亮了,并且原先处于中间调的部分,有的地方被压暗了。
在这里插入图片描述
曲线视图工具栏的前六个按钮,对应的是插入的控制节点的属性:
1.位置复原
2.两轴锁定(即两轴会保持相对角度进行运动)
3.曲线平滑:会自动平滑插入点两侧
4.左轴锁定:只能调整右轴
5.右轴锁定:只能调整左轴
6.直线化:控制点后侧成为直线

在这里插入图片描述
通过一些曲线操作,我们可以实现过渡平滑的纹理变得对比强烈。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. Transformation 2D/2D变换节点

非常浅显易懂的节点,对输入的图像进行2D变换。
需要注意的是,他的旋转和缩放参数是实时生效的,且生效后对应参数会直接刷新成初始值。在一番复杂的操作后,如果想通过修改数值返回到初始状态是很困难的,基本只能通过重置转换矩阵来实现。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
另一个较常用属性的是该节点的平铺模式,默认状态下该值不可调整,需要主动调整继承模式(红框部分)为“绝对”,才能进行调整。
在这里插入图片描述

4. Levels/色阶节点

跟曲线节点逻辑类似,用于条件图像的明暗对比。支持亮度通道,RGB通道,透明度通道的调整。
在这里插入图片描述
在这里插入图片描述
导入图像后,可以看到图像整体的暗部-中间调-亮部的柱状图统计分布。
在这里插入图片描述
顶部为变换轴,通过三个控制器还控制暗部,中间调,亮部的变化。
通过调整顶部的控制器,柱状图中对应亮度的pixels会被划分到暗部和亮部。
例如,当我们把暗部控制器右推时,原有的中间调偏暗的部分将会被划为暗部。
在这里插入图片描述
在这里插入图片描述
底部轴为压缩轴,即通过拉动对应的控制器,相应的,pixels的分布区间会被压缩。
即我们拖动暗控制器时,由于原本的暗部被压缩,画面整体会变亮。
对于拖动亮控制器,逻辑相反。
在这里插入图片描述
在这里插入图片描述

5. Histogram/直方图系列节点

该系列节点全部只接受灰度输入,采用了类似于色阶节点的运算逻辑。

5.1. histogram range节点

两个参数:
第一个参数为对比度控制,在默认情况下,会一定程度上降低输入图像的对比度,类似于模糊。
第二个参数为类似于色阶节点的中间调控制。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.2. histogram scan节点

两个参数:
position/位置参数的逻辑和Histogram range节点类似,做中间调控制器。
contract参数能够锐化图像。
在这里插入图片描述
拉动contract参数:0-1。
在这里插入图片描述

5.3. histogram select节点

histogram系列中相对难理解的节点,主要提供基于灰度的选择功能,做出遮罩。
三个参数:
position:控制选择位置,亮度0-1
range:控制选择范围,一般不能拉为0
contract:对比度,控制选区锐化
在这里插入图片描述
在这里插入图片描述
以输入线性过渡贴图为例
range调整,改变选择范围
在这里插入图片描述
拉动range,扩大选择范围
在这里插入图片描述
有个histogram select节点非常经典的应用,选择符合指定高度区间的全部pixels:
蓝色部分为选中的pixels
在这里插入图片描述

6. Normal/法线节点

常用的法线类节点,主要包括法线转换和法线混合类节点。

6.1 normal节点

把灰度图转换为法线贴图,扩展颜色通道的信息。
在这里插入图片描述
在这里插入图片描述

6.2. normal combine节点

有dcc和引擎基础的人都知道,法线是不能直接线性加权相加的,平坦面对应法线由于自身z方向权重更大,会影响其他面法线使之变平,导致细节的丢失。
所以需要使用专门的法线混合节点,而非blend节点来进行法线混合。

blend进行1/2权重的混合(下方第一图)vs normal combine(下方第二图)
在这里插入图片描述
在这里插入图片描述

6.3. height normal blend节点

在这里插入图片描述
如其名,实现高度贴图和法线贴图的混合,实际上也可以先把高度贴图转换成法线贴图再做混合,目前暂未感受到太大区别。

在官方文档的描述中,我们看到其被定义为一种比拆解式混合法更快一些的方法。
在这里插入图片描述

6.4. normal blend节点

在这里插入图片描述
如其名,提供法线混合运算,且跟blend节点一样提供了mask的输入口。

7. Blur/模糊节点

7.1. blur节点

没什么能说的,就是模糊。
在这里插入图片描述

7.2. blur hq节点

blur的高端替代,能用blur的时候基本都用blur hq,整体扭曲失真更少。
在这里插入图片描述

7.3. directional blur节点

方向模糊,提供方向参数
在这里插入图片描述

在这里插入图片描述

7.4. anisotropic blur节点

各向异性模糊,额外提供各向异性和质量的参数控制:
anisotrophy越大,各向异性越强。
质量为二元参数,0时为blur,1时为blur hq。

在执行模糊的同时,在指定角度(下下图红框部分)上保留原有形状。
在这里插入图片描述

在这里插入图片描述

7.5. non-uniform blur节点

使用mask作为模糊强度,兼具上述节点的参数。
通过samples和blades参数共同控制模糊质量。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

7.6. radial blur节点

径向模糊,使图案能够绕指定圆心进行模糊。
在这里插入图片描述

在这里插入图片描述

7.7. slop blur节点

SD中最有意思的模糊节点,其模糊的各向异性由mask输入来控制,能够实现类似于两种形状混合的模糊效果。
在模糊过程中,给图案添加大量的细节。
在这里插入图片描述
在这里插入图片描述

8. Tile/平铺节点

毫不夸张地说,用以支撑生成各类平铺效果的节点,是SD中最重要的一系列节点。
不管是单纯地构成图案的主体,或者是用以在画面中增加细节信息量,tilling相关的节点和参数都发挥了重要作用。

8.1. tile generator

在这里插入图片描述

实例化参数

允许用户从x,y轴两个维度控制生成实例的数目
在这里插入图片描述

样式参数

允许用户自选实例化的图案,且允许用户对输入的自定义图案进行实例化。
有图案随机性,旋转随机性,对称随机性参数。
在这里插入图片描述
在这里插入图片描述

尺寸参数

支持不同的尺寸模式,支持控制x,y方向上的间隙大小,支持随机化尺寸生成
在这里插入图片描述

位置参数

即控制位移相关的参数,有个体的偏移和全局偏移的参数。
注意这里第一个偏移为随着行列做线性增长的偏移。
在这里插入图片描述

旋转参数

与尺寸参数的相比,旋转参数的控制粒度更细
在这里插入图片描述

颜色参数

主要实现的是随机亮度,支持按编号,尺寸的随机,并且支持自定义mask。
增加信息量的一把好手。
在这里插入图片描述

8.2. tile random

与tile generator整齐的排列不同,tile random实现一个排列上更随机的实例化生成节点。
在这里插入图片描述
实例化参数和图案参数和tile generator逻辑相似。

自动分割参数

实现水平,数值方向的随机分割。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
其他参数与tile generator类似。

形状参数

其他位置参数与tile generator的旋转类似,但增加了旋转限制开关。
通过控制限制,能够控制旋转的图案是否重叠。
在这里插入图片描述

在这里插入图片描述

8.3. tile sampler

终极版tile generator,兼具上述的参数功能,主要是实现了多个用户自定的图形输入接口。
在这里插入图片描述
scale map input
在这里插入图片描述
displacement map input
在这里插入图片描述
rotation map input
在这里插入图片描述
vector map input:能够驱动基于vector map的缩放,偏移和旋转
在这里插入图片描述
color map input
在这里插入图片描述
mask map input:通过用户自定控制mask剔除范围
在这里插入图片描述

9. Warp/弯曲节点

9.1. warp

根据输入的渐变图像进行变形,效果上和slop blur有一定相似。
在这里插入图片描述

9.2. directional warp

实现基于指定方向的变形,输入为变形强度。
比较玄学,入门以来一直没掌握好控制变形的手感…
在这里插入图片描述

9.3. multi directional warp

与directional warp相比,主要是实现了图案在原地的变形。强度由输入参数控制,且由于支持1,2,4多个方向变形和变形模式的选择,细节上更好。
在这里插入图片描述

9.4. non-uniform directional warp

在9.3的基础上,主要增加了用户自定图形输入的变形角度控制。
在这里插入图片描述

9.5. vector warp

使用彩色图来控制变形方向,但注意B通道是不使用的。连官方文档都留下了有冲突的描述,可能官方文档确实是没人看吧。。。
在这里插入图片描述

在这里插入图片描述可以看到RG通道在变形方向上的不一致,但都是水平x的相反方向。
在这里插入图片描述

10. Gradiant/渐变

主要实现灰度/彩色数据转换

10.1 gradiant

通过制定渐变输入,给灰度图进行彩色转换。
在这里插入图片描述

10.2 gradiant mapping

彩色图转为灰度图
在这里插入图片描述

最后用sd简单拉了个封面。
在这里插入图片描述

在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐