Unity UGUI 背景动态模糊的一种处理方案

2024/05 12 23:05

一、逻辑层预处理

将UI切分成二段,假如第一段为UI层,第二段为UIOverlay层

(将UI层的layer设置为默认的UI层,新建一个layer,命名为UIOverlay)

将面板打开或者关闭时,找到最顶层的模糊底板,然后

将此底板下面的,设置为UI层

将此底板上面的,设置为UIOverlay层

二、渲染层添加模糊

1、修改URP底层管线代码,在渲染半透明物件的地方,再渲染一遍半透明物件

2、或者再添加一个UI相机,把CullingMask设置为UIOverlay

即画2遍UI元素,第一遍正常画,第二遍只画带有模糊的UI面板

然后在第一遍画完之后,把颜色RT拷出来,做几次模糊,然后此RT存好备用即可