前言
之前使用ASE做过一个电流效果的shader,今天我们通过ShaderGraph来实现一个电流效果。
效果如下:
关键节点
Simple Noise:根据输入UV生成简单噪声或Value噪声。生成的噪声的大小由输入Scale控制。
Power:返回输入A的结果的输入B次方。
注意:如果输入A为负,则输出可能不一致或 NaN。
Remap:根据输入UV生成矩形形状,其大小由输入Width和Height指定。生成的形状可以通过连接平铺和偏移节点来偏移或平铺。请注意,为了保留在 UV 空间内偏移形状的能力,如果平铺,形状将不会自动重复。要实现重复矩形效果,首先通过Fraction Node连接您的输入。
注意:该节点只能在片段 着色器阶段使用。
Rectangle:根据输入UV生成矩形形状,其大小由输入Width和Height指定。生成的形状可以通过连接平铺和偏移节点来偏移或平铺。请注意,为了保留在 UV 空间内偏移形状的能力,如果平铺,形状将不会自动重复。要实现重复矩形效果,首先通过Fraction Node连接您的输入。
原理
这个电流效果的shader实现原理就是,先合并两个交互运行的噪波图,然后通过Remap+Rectangle节点从噪波图中提取电流的形状,我们给他乘上一个自由颜色,然后把最终的颜色赋值给Emission即可。