Ue材质入门——3
数据是基础
- 在Ue中,一切引擎中,一切都是由数据构成的。
- Ue中最上层数据为四通道数据,即RGBA
- 数据代表颜色一样可以代表法线方向等等其他含义
数据运算
- 本质都是向量的运算
- 一位数据因为是一个常量因此是可以与任意数据进行乘除法运算的
加减乘除
色域
- 在Ue中基础颜色的色彩范围是0-1,它是根据输入值计算的,如果大于1则为1,小于0则为0.
- 而自发光颜色是可以无限增加的,直到照亮整个场景(配合虚幻五特有的Luman全局光照系统)
色彩运算
加法运算
- 前文提到,一切颜色依然是由数据组成的,因此我们同样可以通过向量运算来计算颜色:
- Ue中的颜色计算使用了与现实世界颜料不同的减色法,即模拟自然光是由白光分出的红绿蓝三色光。
- 上图的运算我们可知,白色对应RGB通道值为(1,1,1),这也对应了前文提到色彩范围是0-1
- 除法运算同理
乘法运算
- 乘法运算是根据向量基础进行的运算,如果将上图中的红色通道与绿色通道相乘,那么结果为0,自然会显示黑色
- 而白色为(1,1,1),那么它与任何颜色相乘,仍为该颜色
除法运算
- 在除法运算之中,如果除数为0,则会保存一个有效值,若全为0 则会不进行这个运算,同样返回原有值,但不建议这样做!任何情况下!
纹理图像的运算
- 纹理图像是一个一个数组,它们同样可以进行加减法运算,因为本质都是向量组成的,这也被称为矩阵。
图像的加减法运算
- 这里我们通过PS来进行观察:
- 这里我们设置了线性减淡添加,这本事就是一种相加算法,它会让图片越来越亮
- 反之如果我们使用相减运算,那么就会让图片越来越暗
图像的乘除法
- 在Ps中,乘法被称为正片叠底,因为是乘法,如果黑色部位乘上一个不为黑色的部位,那么就会让图片变暗,并且保留黑色部分。
- PS中,除法运算的方式叫做划分,它会根据图像的乘除关系,让图片变亮抑或是变暗,取决于除数与被除数的大小关系
偏差比例运算
- 这是一种组合运算,先加上一个值再乘上一个值,相当于先进行加法运算,再进行乘法运算
线性插值运算
- 本质上是一种混合运算,可以通过调节Alpha输入的值来控制线性插值的结果。我们同样可以通过输入某一个纹理的Alpha值来控制。
- 一般Alpha通道值需要一个一维向量为参数,我们可以通过Clamp或saturate节点来限制范围,后者在UnityShader中就很常见,它的系统损耗最低,我们一般倾向于使用它作为限制数值范围的工具,但它的范围只有0-1这一个固定参数范围,而前者clamp可以接受我们自主定义:
- 混合节点最好使用Saturate节点控制,这样可以减少性能损耗!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Pleasant233!