UE4Material_数学节点

Add(加):
接收两个输入,将其相加,输出结果,按通道执行,这意味着输入的 R G B通道等等将分别相加,单通道除外。通常用来使颜色变亮/变暗,或者使 UV 纹理坐标偏移。
示例: 对 0.2 和 0.4 执行 Add(加)的结果是 0.6;对 (0.2,-0.4,0.6) 和 (0.1,0.5,1.0) 执行 Add(加)的结果是 (0.3,0.1,1.6);对 (0.2,-0.4,0.6) 和 1.0 执行 Add(加)的结果是 (1.2,0.6,1.6)

Subtract(减):
同上
示例: 对 0.5 和 0.2 执行 Subtract(减)的结果是 0.3;对 (0.2,-0.4,0.6) 和 (0.1,0.1,1.0) 执行 Subtract(减)的结果是 (0.1,-0.5,-0.4);对 (0.2,0.4,1.0) 和 0.2 执行 Subtract(减)的结果是 (0.0,0.2,0.8)。

Mutiply(乘):
同上,第一个输入的 R 通道将乘以第二个输入的 R 通道,第一个输入的 G 通道将乘以第二个输入的 G 通道,依此类推。除非其中一个值是单个浮点值。
示例: 对 0.4 和 0.5 执行 Multiply(乘)的结果是 0.2;对 (0.2,-0.4,0.6) 和 (0.0,2.0,1.0) 执行 Multiply(乘)的结果是 (0.0,-0.8,0.6);对 (0.2,-0.4,0.6) 和 0.5 执行 Multiply(乘)的结果是 (0.1,-0.2,0.3)。

Divide(除):
同上,除法按通道进行,分别相除。A:被除数 B:除数。

Power(幂):
接收两个输入,计算“底数”(Base)的“指数”(Exp)次幂,并输出结果;换而言之,“底数”(Base)自乘“指数”(Exp)次。
示例: 底数为 0.5,指数为 2.0 时,Power(幂)的结果为 0.25。
用法示例:如果传递到 Power(幂)的颜色在 [0,1] 范围内,那么 Power(幂)可以用作对比度调整,即,仅保留较亮的值

SquareRoot(平方根):
输出输入值的平方根。SquareRoot(平方根)只能对单个浮点输入值执行运算。

Floor(减一取整):
输入一个任意值X,这个节点会把小数部分扔了,只保留整数部分,作为输出值Y。具体的适用情况就是:我只想得到一个整数,不要它的小数部分。
示例: 对 0.2 执行 Floor(减一取整)的结果是 0.0;对 (0.2,1.6) 执行 Floor(减一取整)的结果是 (0.0,1.0)。

Ceil(加一取整):
同上输入值X如果有小数部分,扔掉小数的同时,还会进一位到整数
示例: 对 0.2 执行 Ceil(加一取整)的结果是 1.0;对 (0.2,1.6) 执行 Ceil(加一取整)的结果是 (1.0,2.0)。

Frac(小数):
其特定就是无论输入的值多大多小,都会把整数部分忽略,只保留小数部分,然后在0到1的区间找到其对应的Y值,实际上这个Y值也就是小数部分本身的值,即输出区间为0到1之间(可以等于0或者1)。
示例: 对 0.2 执行 Frac(小数)的结果是 0.2;对 (0.0,1.6) 执行 Frac(小数)的结果是 (0.0,0.6)。

Time(时间):
用来向材质添加经历时间。一般连接正弦/余弦/平移等。

Sine(正弦):
在-1到0之间浮动的抛物线(曲线) 和time配合使用,比如可以用在物体自发光闪烁上(在-1到1之间反复运动)

Cosine (余弦):
反复输出 [0, 1] 范围内的余弦波值。

Lerp线性插值(LinearInterpolate):
根据用作蒙版的第三个输入值,在两个输入值之间进行混合。您可以将其想像成用于定义两个纹理之间的过渡效果的蒙版,例如Photoshop中的层蒙版。蒙版“阿尔法”(Alpha)的强度确定从两个输入值获取颜色的比例。如果“阿尔法”(Alpha)为0.0/黑色,那么将使用第一个输入。如果“阿尔法”(Alpha)为1.0/白色,那么将使用第二个输入。如果“阿尔法”(Alpha)为灰色(介于0.0与1.0之间的值),那么输出是两个输入之间的混合。请记住,混合按通道进行。因此,如果“阿尔法”(Alpha)为RGB颜色,那么“阿尔法”(Alpha)的红色通道值定义A与B的红色通道之间的混合,而与“阿尔法”(Alpha)的绿色通道 无关,该通道定义A与B的绿色通道之间的混合。
(Lerp就是,alpha值是0到1,到一张图上就是黑色到白色,然后A和B就是你要输入的颜色,然后根据Alpha的0输出A颜色,1输出B颜色,灰色代表0到1的一个值,输出AB两种颜色的混色)

参考:https://www.cnblogs.com/sevenyuan/p/7825407.html

FMod(浮点余数):
返回对两个输入执行除法运算的浮点余数。

Abs(绝对值):
负数转换为正数,而正数和零将保持不变。

AppendVecter(追加矢量):
A:接收作为追加目标的值。B:接收要追加的值。
示例: 对 0.2 和 0.4 执行追加的结果是 (0.2,0.4);对 (0.2,0.4) 和 (1.0) 执行追加的结果是 (0.2,0.4,1.0)。

CrossProduct(矢量积):
计算两个三通道矢量值输入的矢量积,并输出所产生的三通道矢量值。给定空间中的两个矢量,矢量积是与两个输入都垂直的矢量。通常用来计算与另外两个方向都垂直的方向。

DotProduct(标量积):
即一个矢量投射到另一个矢量上的长度。许多技术使用此计算来计算衰减。DotProduct(标量积)要求两个矢量输入具有相同数目的通道。

Clamp(限制):
CMODE_Clamp 将对范围的两端进行限制。CMODE_Clamp Min接收限制时用作最小值的值。CMODE_Clamp Max接收限制时用作最大值的值。

ComponentMask(分量蒙版):
允许从输入中选择通道(R、G、B 和/或 A)的特定子集以传递到输出。尝试传递输入中不存在的通道将导致错误,除非输入是单个常量值。在这种情况下,会将单个值传递到每个通道。选择传递的当前通道将显示在表达式的标题栏中。
示例: ComponentMask (分量蒙版)的输入为(0.2,0.4,1.0),则 G 通道将输出 (0.4),并在作为色彩矢量使用时显示40%亮度的灰度值。

If(如果):
表达式对两个输入进行比较,然后根据比较结果传递另外三个输入值中的一个。所比较的两个输入必须都是单个浮点值。

Max(最大值):
表达式接收两个输入,然后输出其中的较大者。
此节点类似于 Photoshop 的“变亮”。

Min(最小值):
表达式接收两个输入,然后输出其中的较小者。
此节点类似于 Photoshop 的“变暗”。

Normalize(规范化):
表达式计算并输出其输入的规范化值。这表示该输入的每个分量都会除以矢量的 L-2 范数(长度)。

OneMinus(一减):
表达式接收一个输入值,并输出“一减去该值”。此运算按通道执行。
示例: 对 0.4 执行 OneMinus(一减)的结果是 0.6;对 (0.2,0.5,1.0) 执行 OneMinus(一减)的结果是 (0.8,0.5,0.0);对 (0.0,-0.4,1.6) 执行 OneMinus(一减)的结果是 (1.0,1.4,-0.6)。
用法示例:当输入颜色在 [0,1] 范围内时,OneMinus(一减)的作用就是通常所谓的“反色”-- 即,OneMinus(一减)将返回互补色,这种颜色与输入相加将产生白色。

Saturate(饱和)
节点将值限定在0与1之间。小于0的值被提升到0;大于1的值降低为1;0到1之间(包括0和1在内)的值保持不变。在大多数现代图形硬件上,Saturate的指令成本几乎是免费的,所以您可以在任何时候使用该节点来将输入或输出值限制在0到1之间,而不影响您的材质的性能。
使用示例: 当您需要将输出或输入值限定在0与1之间时,应使用此节点。

UE4美术笔记和学习经验(推荐链接):http://blog.sina.com.cn/s/blog_7449610f0102w1m7.html

  • 5
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值