Unity-ShaderGraph 边缘发光与卡通火焰

Unity-ShaderGraph 边缘发光与卡通火焰

节点分析

Fresnel Effect:菲涅尔效应 ,节点包含了三个输入,分别是表面法线的方向,表面视角的方向以及一个浮点数Power。计算公式如下
Out = pow((1.0 - saturate(dot(normalize(Normal), normalize(ViewDir)))), Power);
就是视角方向和物体表面方向夹角越大 输出的值越大,所以中心显示黑色 外圈显示白色
Remap:重映射,将输入的值映射到另一个范围之中
UV:u 从左到右 从0-1 ,v从下到上 从0-1
在这里插入图片描述
Distance:两点之间 的距离
Clamp: 把输入的值固定到一个范围之中
Lerp: 三个输入 A B T ,T相当于控制AB占的百分比
在这里插入图片描述
**Voronoi **:泰森多边形又叫冯洛诺伊图(Voronoi diagram),得名于Georgy Voronoi,是一组由连接两邻点线段的垂直平分线组成的连续多边形组成。一个泰森多边形内的任一点到构成该多边形的控制点的距离小于到其他多边形控制点的距离。
在这里插入图片描述

边缘发光特效

在这里插入图片描述
实现效果为:
在这里插入图片描述

火焰特效

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
实现效果如下:
在这里插入图片描述

总结:

发光特效:使用菲涅尔节点与Color节点相乘输出到Emission节点中,其中为了让物体有一个渐变的过程添加了Time节点,防止物体完全变黑把sin 的值从[-1,1]映射到[0.2,1]上。
火焰特效:使用两个Voronoi节点 让他们以不同的速度不同的大小向上偏移,这样面片上就会出现类似奶酪形状的图片,因为面片是正方形 而火焰是上端是比较类似那种尖锐的所以 使用UV节点和二维节点通过Distance节点获得一个有一个黑点的节点 在映射到反向就获得了椭圆形节点 椭圆是白色 外部是黑色这样面片的上半部分就会被剪成椭圆形, 因为火焰的根部不应该出现镂空所以利用刚才映射后的节点变成自身的几次方后与Voronoi节点最终输出节点相加 最后因为火焰顶部和底部的颜色不一样 我们要用两个颜色通过插值获得最终颜色 如果想要做卡通风格 就不需要中间的两个颜色的渐变颜色 通过Step节点二向化变成只有两种颜色就行了。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值