Unity | AmplifyShaderEditor插件基础(第五集:简易膨胀shader)
一、👋🏻前言
大家好,我是菌菌巧乐兹~本节内容主要讲一下,如何用shader来膨胀~
效果预览:
二、💨膨胀的基本原理
之前的移动是所有顶点朝着一个方向走,所以是移动
如果所有顶点照着自己的方向走,就是膨胀,顶点自己的方向一般就是法线方向

三、💥手动膨胀
1.把模型准备好
模型在群里,或附带资源,或这是unity商店免费模型,模型如图所示
2.把之前学过的shader准备好
以上是准备工作,就不多讲了,随着前面讲的东西越来越多,后续我都会把准备工作直接放在上面,请大家自己解锁
下面是新知识点
3.节点VertexNormal
吐槽一下:不得不感叹,在写一些简单的shader时,ASE就是方便
如图所示,我们获取到了顶点的法线,法线的坐标是(-1,-1,-1)到(1,1,1)之间的
我有了法线坐标,然后如果希望大一点,就乘大一点的normalScale,如果希望小一点,就让normalScale小一点
把节点连到顶点偏移上
normalScale是外部更改的,去外面更改它
四、🚗自动膨胀
1.自动膨胀的原理
我先把手动膨胀的值调到我希望的位置,然后这是一个值
我把这个值和上节课的sin乘一下,就会在值×(-1)到值×(1)之间变动
其实变成负值就很奇怪了,所以我们需要把sin的值变成(0,1)之间
总结:
a.把sin的(-1,1)的自动变化变成(0,1)
b.把这个sin的值和手动膨胀的值乘一下
2.sin的变化(节点remap)
右边的这个remap是换值的节点
min old 老值的最小值 这里填-1
max old 老值的最大值 这里填1
min new 新值的最小值 这里填0
max new 新值的最大值 这里填1
备注:这个是等比的换
如原来是-1,现在是0
原来是0的时候,现在就是0.5
3.把两个准备好的数值乘一下
4.结果
五、😄结语
非常感谢你的观看,如果你觉得我帮到你了,可以给我点一个赞吗~
我会为此创作更多的文章。