前言:
今天用一个超简单的方式实现一个非常常见的溶解效果,重点开始理解原理,再加上自己的一些创意,去打造属于自己的Shader。
创建材质:
● 右键 - Create - Amplify Shader - Legacy - Unlit
● 在创建出的Shader上右键 - Create - Material - 起个名字
● 打开ASE编辑器
初步实现:
- 首先经过之前的课程介绍,相信能第一时间想到,溶解的必要节点就是噪声noise了。
- 在ASE中,噪声有几种实现方式,常用的两个就是Voronoi 和 Noise Generator,今天我们用后者来创建一个自定义噪声,因为它自由度更高一些。
- 用默认的UV节点作为输入。
- 再调整Scale,给一个合适的数值,让噪声能显现出来,这里我们先给个5,可以看到图示的样子。
- 接下来另一个关键的节点来了:Step
- 注意上方的注解,它的作用就是返回非零即一(也就是非黑即白)。
- 这样我们把它连接到刚刚的噪声节点上,再用一个控制变量来当黑白切换的阈值。
- 到这一步实际上已经可以结束了!怎么样,超简单吧,原理也同样容易理解。
- 看一眼代码吧:
- 这里可以看到,片元着色函数里,最终的颜色就是通过Step + 柏林噪声 + 控制变量实现(忽略Color)。
更多延展
- 可以使用你喜欢的贴图作为噪声生成器节点的UV输入,试试效果。
- 可以让溶解的边缘区域产生不同的颜色,想想办法。
总结:
这一期一句话总结就是:超简单,目的是为了让大家了解到溶解的最最基础的原理,并且不那么抗拒Shader。