LOADING

加载过慢请开启缓存 浏览器默认开启

Unity 2D Shader Graph实现溶解和发光思路

前言

本文主要介绍通过使用unity的2d Shader Graph实现溶解和发光的思路。

首先需要导入URP的包,然后再设置用于2D的shader

2D Shader Graph设置:

image-20240819180222086

image-20240819180001392

生成URP Assest的时候会生成一个默认的Renderer,不过默认是3D用的,所以记得删去。

Dissolve效果展示

image-20240819174737029

从效果上可以看到,除了溶解,还有边缘发光的效果。

image-20240819174829845

Shader编辑器如图。

溶解的思路就是生成一个噪声图,与图片叠加,由噪声图控制透明度,然后用step节点控制噪声图,就能形成淡出淡入的效果,再加上噪声图的大小缩放也控制上,就能实现溶解。

间隙发光的思路是用原来的噪声图进行一点点偏差,生成一个新的噪声图,再将两个噪声图做差,再与原本的噪声图(指最初的噪声图与图片叠加后的结果),得到间隙,再附带上颜色,就形成了间隙发光的效果。

Glowing效果展示

image-20240819174946598

image-20240819175437088

这个发光效果的好处就是可以变化颜色,也就是说,可以代码控制颜色变化,实现角色获得buff展示不同效果或者是角色技能升级产生不同效果。

image-20240819175231392

Shader编辑器如图。

首先要制作一个原本技能贴图的蒙版,作为原本图片的次级纹理。蒙版图片只有黑白,所以只选取RGB其中任意一个通道就行,然后再用个颜色叠加,就能只影响技能的发光并且可以更改技能颜色。

写在最后

这也算是我第一次接触这部分的知识,道阻且长。无他,只是想记录记录,其实这也没什么技术含量,但是我想写就写。

参考资料:

Dissolve

Glowing