UE4实现描边后处理材质方法------Sobel算子

参考了很多资料~摸清楚了不少坑之后更新了这篇文档。

 会写得比较细,有错漏的地方感谢指正,后续会继续更新一系列图形效果的实现。

最终效果,还有改良空间。

首先说下思路。

由于UE4延迟渲染的机制,我们可以从后处理中提溜出一大堆可以操作的图形来,这里将会用到的就是SceneDepth(场景深度,用来表现物体离相机远近的灰度图)贴图。于是,利用这张图,我们可以结合Sobel算子来实现边缘处理。

Sobel算子是相当经典的边缘检测算法,计算快,消耗低(只涉及+和*运算)。简单来说就是利用Sobel特定的卷积核对原始图形进行卷积计算,从而计算出像素的梯度矢量,根据值也就可以描述像素是否为边缘点。

PS:卷积计算,是指两个变量在某范围内相乘后求和的结果。比如有两个二维向量(8,9);(12,5)他们做卷积就是(8*12)+(9*5)。

Sobel的卷积计算是根据矩形算子来的,横竖算子分别是

它们需要分别和每个像素以及像素周边的八个像素组成的3x3矩阵进行卷积计算。假设现在有个像素a,他周边的像素是

a1,a2&

  • 9
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值