Unity全屏效果
预先准备
首先,确保你的Unity版本高于2022.2,并且项目为URP项目。
创建一个Fullscreen Shader Graph,Blend Mode设置为Alpha,并且创建对应的Material。
然后,找到你的Scriptable Render Pipline Asset(位置在Edit-Project Settings-Graphics),在里面找到Renderer List,修改渲染器的配置,添加Add Renderer Feature。
将Pass Material设置为你创建的Material,如下图。
Shader Graph编辑
我们希望制作一个只在边缘出现,不影响主要内容的全屏滤镜,因此我们需要一个中心值低,而边缘值高的分布。
距离中心的距离越远,结果值越高,可以用length节点和Power节点来实现。如下图所示。其中的Color需要设置为HDR颜色。
调整一下各项参数后,可以得到如下结果
更好的效果
我们可以使用噪声来产生更多变的特效,但是为了在性能上考虑,建议在实际开发时使用预先制作好的材质
显然,可以添加Time节点来让其更有动感,同时也可以使用重映射后的Sine函数来控制大小,从而产生呼吸感。
下载链接
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Europa Superman 's blog!