中blur函数_Image Effects扩展——支持Clip的Blur

本文介绍如何扩展Unity的Image Effects blur组件,实现支持裁剪区域的模糊效果。通过Down Sample降低分辨率,Clip进行裁剪,Gaussian Blur进行高斯模糊,以及Compose进行图像叠加和边界柔化,最终达到在特定屏幕区域应用模糊的视觉效果。完整代码和改进方法使得此技术适用于规则图形的裁剪模糊场景。
摘要由CSDN通过智能技术生成

f2df117bda9848f23fe263c42e297294.png

Unity自带的Image Effects的blur组件用于实现全屏幕模糊的效果。本文对其扩展实现支持裁剪的模糊效果。

Down Sample

An old-school trick for cheap blurs is to down-sample your image , and then up-scale the image with linear filtering.we'll apply a nice quality gaussian blur to the downsized image

通俗的说,低分辨率的贴图本身就有种“糊”的感觉,在此基础上做模糊,效率和效果都比较合适。

Clip

Clip操作在down sample阶段进行,修改fragDownsample函数,添加代码:

color *= 1 - step(_Clip.y, i.uv.y) * step(1 - _Clip.w, 1 - i.uv.y)*
	     step(_Clip.x, i.uv.x) * step(1 - _Clip.z, 1 - i.uv.x);

上述代码中_Clip由C#传入,按屏幕坐标矩形区域进行“裁剪”——使得矩形框内的颜色为0,这么做是为了最后与原图的叠加操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值