今天同样的给大家带来一个屏幕后处理的效果,边缘检测的应用教育检测 。这个效果有点类似于素描画。大家待会看看就知道了。今天这个效果的实现还是有点小难度的。因为它用到了卷积。可能有人不是很清楚这个东西,不要紧,待会我会说的。其实不仅今天这个效果用到卷积,像那种模糊效果比较真实的高斯模糊,同样的也用到了卷积。OK,我们先来看看今天这个案例的效果吧。
这是在game面板显示的情况教育检测 。
这是scene面板显示的情况教育检测 。很明显我们编写的Shader脚本是用于对屏幕来进行操作的,也就是后处理效果。具体是什么样的效果呢?那就要看Shader里面的具体实现了。
首先是后处理的基本操作教育检测 。这个说过很多次了。在RenderImage这个函数里面使用我们编写的Shader脚本的材质就行了。代码如下:
这就是后处理的操作教育检测 。很简单吧。
接下来就是Shader脚本的编写了,我们要做边缘检测,所以原理就很重要了教育检测 。首先我们需要进行卷积操作,也就是需要对于图像中的每个像素与周围的像素进行重新融合以得到新的像素,卷积的具体操作比较抽象,这里不过多说了,感兴趣的自己去看看百度上面的解释。接着我们通过偏移值计算出目标周围像素的坐标。然后进行梯度值计算。然后值得注意的一个点就是横向的梯度值测出来的是纵向的边缘线,纵向的梯度值测出来的是横向的边缘线。计算出梯度值后对原始才有结果进行插值操作得到最终的图形。原理就是这样了。现在上Shader代码。
关键的代码就在这里了教育检测 。