【Unity】从零使用Amplify Shader - 超简单溶解

前言:

今天用一个超简单的方式实现一个非常常见的溶解效果,重点开始理解原理,再加上自己的一些创意,去打造属于自己的Shader。

创建材质:

● 右键 - Create - Amplify Shader - Legacy - Unlit
● 在创建出的Shader上右键 - Create - Material - 起个名字
● 打开ASE编辑器

初步实现:

  • 首先经过之前的课程介绍,相信能第一时间想到,溶解的必要节点就是噪声noise了。
  • 在ASE中,噪声有几种实现方式,常用的两个就是VoronoiNoise Generator,今天我们用后者来创建一个自定义噪声,因为它自由度更高一些。
    在这里插入图片描述
  • 用默认的UV节点作为输入。
  • 再调整Scale,给一个合适的数值,让噪声能显现出来,这里我们先给个5,可以看到图示的样子。
  • 接下来另一个关键的节点来了:Step

在这里插入图片描述

  • 注意上方的注解,它的作用就是返回非零即一(也就是非黑即白)。
  • 这样我们把它连接到刚刚的噪声节点上,再用一个控制变量来当黑白切换的阈值。
  • 到这一步实际上已经可以结束了!怎么样,超简单吧,原理也同样容易理解。

在这里插入图片描述

  • 看一眼代码吧:

在这里插入图片描述

  • 这里可以看到,片元着色函数里,最终的颜色就是通过Step + 柏林噪声 + 控制变量实现(忽略Color)。

更多延展

  • 可以使用你喜欢的贴图作为噪声生成器节点的UV输入,试试效果。
  • 可以让溶解的边缘区域产生不同的颜色,想想办法。

总结:

这一期一句话总结就是:超简单,目的是为了让大家了解到溶解的最最基础的原理,并且不那么抗拒Shader。

猜你喜欢

转载自blog.csdn.net/sylardie/article/details/126787628