sine正弦波:表示由正弦函数给出的恒定幅度的周期性振荡的曲线。
ue4中正弦波sine是制作材质时最通用和最主要的功能之一。
从颜色之间的切换到动画顶点,理解正弦波以及如何操纵它们确实很有帮助
基本的sine正弦波如下图所示 - 它在一段时间内在不断地载1和-1之间转换。
sin(x)
可以借助计算器desmos.com/calculator
2sin(x)
通过UE4sine正弦波乘以数字,可以影响它的幅度;
将sin(x)* 2相乘,因此我们将曲线的幅度加倍,使的正弦波从2移动到-2。
sin(x)+3
通过在sine正弦波上添加一个数字,我们可以调整曲线。通过Add-3,曲线在4和2之间移动。
sin(4x)
可以改变正弦波的频率(或曲线重复的频率)。在这里,我们乘以multiply-4来'加快曲线速度'。或者,multiply乘以一个分数(如0.5)将“减慢曲线”。
UE4中: Sine 与 Lerp配合
通过上面的讲解应该了解了操纵正弦波,我们怎样才能在UE4引擎中做到这一点?
首先我们来做个示例我们将使用Sine和Lerp来改变两种颜色之间的过渡。
如果将time sine lerp 等连接在一起,将得到下面结果:
Lerp是'线性插值'的意思,Lerp节点作用是通过Alpha让A和B不断进行转换; 当Alpha = 0时,A的100%,当Alpha = 1时,B的100%。
正弦曲线在1和-1之间移动,已经注意到立方体保持粉红色的时间长于保持蓝色,通过以上的学习sine知识我们大致可以标出的一个波长。如下图:
如何解决这个问题呢?为了让曲线在0-1空间中移动,我们需要乘以0.5(到幅度的一半)并通过添加+0.5来抵消,得到如下所示的图:
0.5sin(x) + 0.5
我们链接material就是下面这个样子:
得到的结果就是我们想要的均匀的过度如下图所示:
UE4 Engine引擎中: Sine & Append
Lerp除了能用于颜色之间的渐变之外,也可以配合Sine通过更改其世界位置偏移来用于动画顶点。我们通过设置z轴上上下移动对象的简单设置来学习下。
通过上面的简单设置我们可以得到下面这样的结果:
要加快或减慢此动画,我们必须将Time乘以一个值; 大于1会使其更快,小于1会使其减慢速度。
我们调大来看一下:
使用材质节点时,必须考虑与RGB相关的XYZ轴,其中R = XG = YB = Z. 即使只想在一个轴上移动对象,也必须将vector3插入到World Position Offset中 - 因此请使用Append为其他轴添加空白值。
这种设置意味着球将在x轴上移动
需要两个附加才能单独在y轴上进行移动
UE4 Engine中: Sine & Abs
最后一个基本功能是操纵正弦曲线 - ABS绝对 - 或绝对。此函数将任何负数转换为正数,将正常的正弦曲线转换为如下图所示:
材质节点中的链接如下图所示: