欢迎光临散文网 会员登陆 & 注册

Unity效果篇-05-遮罩循环

2023-05-24 16:47 作者:Lucas_dudu  | 我要投稿

知识点:


Fmod: 求余数,输出除法 A/B 的其余部分;

Step:   如果 B 的值或向量分量大于或等于 A 的值或相应的向量分量,则返回 1, 否则它将返回 0。


要实现的效果
  1. 前后渐变消失;

  2. mask跟随移动;

  3. 速度是sin曲线运动。


建材质部分我就不说了,第一章有介绍。


第一步:前后渐变 

在unity新建一个plan,长宽比例为1:15,比例根据你的需求来定。

新建的材质

通过TextureCoordinates来拆分 x和y方向的渐变。

u=x;v=y.

输出v方向得到渐变

power来伸缩渐变范围。

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

用1-反向渐变。

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

前后渐变

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

暴露power参数的倍数

得到的结果为 

前后渐变


第二步:mask跟随移动

sin函数取余


取模

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

得到了由下到上的mask渐变

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

得到了渐变mask

与上下渐变相乘得到

动态mask
静态图
箭头

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

得到循环贴图
得到mask通道的效果

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

全部节点
材质属性

本章难点是 sin函数取模。

Unity效果篇-05-遮罩循环的评论 (共 条)

分享到微博请遵守国家法律