Unity效果篇-05-遮罩循环
2023-05-24 16:47 作者:Lucas_dudu | 我要投稿
知识点:
Fmod: 求余数,输出除法 A/B 的其余部分;
Step: 如果 B 的值或向量分量大于或等于 A 的值或相应的向量分量,则返回 1, 否则它将返回 0。

前后渐变消失;
mask跟随移动;
速度是sin曲线运动。
建材质部分我就不说了,第一章有介绍。
第一步:前后渐变
在unity新建一个plan,长宽比例为1:15,比例根据你的需求来定。

通过TextureCoordinates来拆分 x和y方向的渐变。
u=x;v=y.
输出v方向得到渐变

通过这个原理我们再去制作反方向的渐变

分别反向得到想要的通道值,把结果相乘就会得到想要的蒙版信息。

可以吧power暴露出来方便调试,我这里统一调整为5.

得到的结果为

第二步:mask跟随移动
sin函数取余

因为我们只要0-π/2的循环,所以用时间 去取模,通过step输出,会得到这样的运动

我们现在想要中间的一段,就要做到在复制一份,让渐变出现的早一些,,用早的减去晚出现的mask,就会得到一段mask。

与上下渐变相乘得到



照一张箭头图片,用暴露他的uv,来控制,现在是y轴拉伸15,这边我们也给到15,与前后渐变相乘。


现在需要让图片与mask一起运动,就需要吧前面用到的sin函数取余的算法链接到图片uv,用append节点来拆分xy,暴露y属性来控制速度,这里的速度与uv的缩放是成正比的,所以速度也是15,因为是冲下往上所以为-15 ,我这里多加了一个颜色,可以修改颜色。






本章难点是 sin函数取模。