关于后期景深边缘瑕疵问题
相信各位小伙伴也像我一样,长期受后期景深毛边问题的困扰。
之前一直在网上找解决方法,但都比较取巧,没有正确地解决景深关系,所以我之前会一直规避这个问题,能在前期加景深就在前期加,后期直接舍去这一步,也算是完美解决了(哈哈)
不过后来无意间看了一个关于Nuke的视频,里面完美解决了这个问题,不过有个很大的缺点就是稍微有点麻烦,但是如果场景不是太复杂的话就还好。
小伙伴们肯定要问有没有AE的,我想说没找到 哈哈
因为最近都用ACES流程,而AE在处理exr文件的时候效率又很低,所以还是决定用Nuke来进行合成
这张是原图和原Z通道(这里我们把蓝色方块当做前景,其余是后景):


这里的原理是把前景和背景用Alpha通道分开,分别加景深,再把两者合到一起;但是分开之后最大的问题是前后景分开后无法解决Z通道边缘的硬边问题,通常的做法是模糊Z通道边缘以得到一个差强人意的结果,所以这是不正确的。
如果直接加景深会是这样:


会发现边缘有瑕疵
如果把前后景分开后加景深再合到一起,边缘还是一样会有瑕疵。
正确的做法:
将Z通道分成前景和后景


这里先处理后景,在分开后的后景下加一个边缘扩展节点EdgeExtend,如图调节参数

就会得到这样的结果,发现边缘的像素往内扩散了


重点来了,这边要把这个扩散后的图拷贝给后景作Z通道(用AE的小伙伴听不懂这个操作没关系,后面会解释目的原理),接着在后景上也加一个EdgeExtend,结果如下

然后加入一开始已经调节好的景深节点,就会得到如图结果

这样后景部分就完成了
接着以同样的操作完成前景部分会得到如图

前景用Alpha抠出来得到

最后把两部分加景深合到一起就行了
最终结果

这是完美的结果,边缘非常柔和

(之前的边缘)

上面有用AE听不懂的小伙伴,这里解释下,其实上面所有操作目的是要得到下面两张图


让有Alpha的地方把像素往没有Alpha的地方扩散,这样就能在加景深的时候有像素可以用并且把边缘正确地柔和
以下是工程截图

还是之前说的,这样一个简单场景就需要这么多节点,确实是比较麻烦的,不过,能解决这个问题也算是一种收获,希望以后能有更加简易的方法吧~~














































































