Unity之ShaderGraph如何实现飘动的红旗

前言

今天我们来实现一个飘动的红旗
如图所示:
在这里插入图片描述

关键节点

SimpleNoise:根据输入UV生成简单噪声或Value噪声。生成的噪声的大小由输入Scale控制。
在这里插入图片描述
Split:将输入向量In拆分为四个Float输出R、G、B和A。这些输出向量由输入In的各个通道定义;分别为红色、绿色、蓝色和阿尔法。如果输入向量In的维度小于 4 ( Vector 4 ),则输入中不存在的输出值将为 0。
如下所示,Split把UV中的红色通道分离出来。
在这里插入图片描述
Clamp:返回钳制在分别由输入Min和Max定义的最小值和最大值之间的输入In 。
在这里插入图片描述

原理

首先通过Time和SimpleNoise,我们生成了一个流动的噪波图,再通过UV+Split,我们得到一个左右渐变的图,两张图叠加,得到一个一侧扰动,一侧精致的扰动图,然后我们把扰动图应用于顶点偏移,就得到了一个顶点不断偏移的红旗飘动的效果。

完整节点

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq563129582/article/details/133936790