老规矩,直接上效果图:(实际效果要比这个好看)
这个动图看起来怪怪的,为展示实际效果,再补发一张,动图中间部分是录屏的原因,不会影响最终制作效果:
没学习Shader Graph之前:我靠😱 !这效果有点牛啊,那个大佬写的? 学习了Shader Graph之后:我去😒 !就这?岂不是有手就行?
两种效果都是通过Fresnel Effect
菲涅耳节点的菲涅耳效应来实现的。
菲涅耳效应:简单的说,物体在不同角度观察下,表面的反射率是不一样的。菲涅耳效应模拟的就是物体材质反射率随角度改变的效果。这种效果经常被用来实现边缘照明,这在很多艺术风格中都很常见。
Shader Graph 中的Fresnel Effect
菲涅耳节点:
在Project面板右键 --> Create --> Shader --> PBRGraph(我这里命名为“OuterGlowPBRGraph”),然后双击打开编辑器面板:
Fresnel Effect
菲涅耳节点,因为是自发光效果所以还需要创建一个Time
节点,然后在创建一个Multiply
乘法节点将其连接如下:
Time
节点输出小于0时,材质完全显示为黑色。这样的效果可不行,所以我们需要限制一下Time
节点的输出,所以添加一个Remap
重新映射节点,这个节点我们可以根据输入值,在输入限定的最大最小值之间的差值,返回在输出的限定范围重新映射值。(比如:输入In:0,输入Min:-1,Max:1; 输出Min:0,Max:10; 则此时返回值是5)。将此节点插入到Time
和Multiply
中间,并将其Out Min Maxx修改为(0.2,1):
Color
颜色节点,并将其制作为外部可修改的属性。
制作步骤:创建Color
颜色节点并将其设置为公开属性(选中节点右键选择“Convert To Property”),然后再创建一个Multiply
乘法节点,节点连接如下:
最后记得点击左上角的"Save Asset"保存一下哦~
在Project面板右键 --> Create --> Shader --> UnlitGraph(我这里命名为“ShieldUnlitGraph”),然后双击打开编辑器面板:
Fresnel Effect
菲涅耳节点和Color
颜色节点,然后在创建一个Multiply
乘法节点将其连接如下:
为了后续方便调整效果直接将Color
颜色节点声明为公开属性(选中节点右键选择“Convert To Property”)
Time
,Vector1
,Multiply
三个节点,并将Vector1
节点设置为公开,连接如下:
Sample Texture 2D
和Texture 2D Asset
节点用来控制贴图显示(Texture 2D Asset节点设置为公开),添加Tilling And Offset
节点用来控制贴图偏移,从而达到移动的效果,节点连接关系如下:
Multiply
乘法节点的输出连接到3步骤Tilling And Offset
的Offset输入上,即可看到移动效果:
Multiply
乘法节点将贴图节点和菲涅尔节点输出连接起来,然后将其输出连接到主节点Alpha
透明度通道;最后将主节点的“Surface”属性设置为“Transparent”透明的:
记得点击左上角的"Save Asset"保存一下哦~
使用和上面自发光的使用方式一样:
多种形态的护盾,可以通过颜色的变化,贴图的变换来进行区分。
实现不同形状的护盾,也只需要将其应用到不同的模型网格上即可,这里我创建Capsule和Sphere就得到了两种不同形状的护盾:
能量效果用的的贴图是随便在网上找的就不贴出来了(直接搜索网格随便照一张都可以用)
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系外文翻译,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。