unity脚本控制逐渐消失_Unity shader消融特效——(1)逻辑节点篇

这篇博客介绍了如何在Unity中使用Amplify Shader Editor创建逐渐消失的消融特效。通过逻辑节点和Shader设置,结合Opacity Mask和灰度贴图,实现了模型从特定位置开始逐渐消失的效果。美术资源包括Noise和渐变贴图,经过处理后用于控制模型的消融过程。最终通过C#脚本实现交互,使得模型在鼠标悬停时开始消融,离开时恢复原状。
摘要由CSDN通过智能技术生成

在游戏里我们经常会看到:怪物死亡之后通常不是瞬间消失,而是从模型的某一位置开始消失,最后蔓延至全身,有点类似于燃烧,这种现象叫做消融(Dissolve)。

本篇主要讲解消融特效的实现逻辑。使用Unity的Amplify Shader Editor进行节点连接。而下一篇会将逻辑写成真正的shader代码。

下面先展示一下大概的预览效果:效果预览

简单逻辑

消融的效果主要利用了shader里的裁切(Clip)功能,在Amplify里叫做Opacity Mask。比如裁切值为0,那么只有当数值大于0,像素才会被渲染出来,否则会被剔除。

一张灰度图的像素值在0~255之间,转换到程序里也就是0~1之间。0是黑色,1是白色。

假如有一张Noise灰度贴图,最开始我加上一个数值v=1,那么所有像素值都是白色。如果我逐渐把v减少,像素的数值也会逐渐减少。当v=0的时候,贴图恢复到原始样貌。我继续减少数值v,当v=-1的时候,贴图所有像素都变为黑色。把这个变化的过程传递给shader做裁切计算,就可以实现模型逐渐消融的效果。

美术资源准备

除了模型本身需要的贴图之外,还需要两张控制消融效果的贴图。

在PS里生成一张云彩的Noise纹理,然后点击图像菜单下的“自动颜色”命令,使图像的像素值完全占用满0~255的范围,这样才不至于有空白的区间产生。Noise贴图

使用PS的渐变工具制作一张左侧黑,中间红,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值