Unity Shader Graph 2D - 角色的消融效果_unity2d溶解shader
在游戏中消融效果十分的常见,它可以用来表示角色被破坏、溶解或融化的效果。可以增加游戏的真实感,增强游戏的视觉冲击力。诸如角色在某些场景下需要进行传送,角色被击败时的死亡,或者一些特殊的技能,使游戏更有趣,带来更好的游戏体验。
那么其原理是什么呢?我们知道图片资源有透明通道Alpha,Alpha为1则会全部显示图片资源,若Alpha为0则图片资源为透明即不显示。消融的过程其实就是将其透明通道以一定的图形形状进行递减至0,就会得到如上所示的消融效果。
那么怎么实现呢?
首先创建一个新的Shader Graph文件,命名为Dissolve,再创建对应的材质球M_Dissolve。
基础资源显示
同理基础节点用来显示角色资源,参考UV滚动动画基础资源显示。
消融效果的实现
为了实现具有颗粒感的消融效果,需要用到噪声节点,在角色外描边流动动画效果文章中有提到过,Shader Graph中有三种噪声节点。此处我们将会用到的噪声节点是Simple Noise,它也具有一个控制噪声密集度的Scale,那么我们也需要创建一个Float类型的NoiseScale的变量来控制噪声的密集度。