我试图使用GLSL着色器模糊场景中的对象。
我所做的是当我画画时,我可能会找到一个需要模糊的物体。当我这样做时,我会在两次传球中这样做(据我所知,这比在一次传球中更优化)。
因此,我将对象绘制为具有水平模糊的离屏FBO(透明BG)。然后,我将此FBO绘制到屏幕的默认FBO中,并显示垂直模糊。
这是结果(此图片中的方法#1 ):
白色"发光"是有问题的。但是,如果我将对象绘制到不具有透明BG的屏幕外FBO,我会从上图中的方法#2 中获得正确的模糊结果。但是,我现在显然在对象后面有一个白色BG - 也不好。
我要问的是,如果你不能使用透明的BG FBO,你应该如何使用双通道模糊?或者我有什么办法可以解决这个问题?也许搞乱混合src / dst函数?