模糊立方体贴图

时间:2010-12-04 12:42:09

标签: opengl blur cube

任何想法怎么做?现在我已经动态生成了立方体贴图,我将其用作圆环上的反射贴图。

分别模糊每一方都不行,对吧?由于边界附近的像素,不会受到邻居的模糊影响。

也许我应该制作另一个FBO,绑定它,在屏幕上“展开”立方体贴图,应用基本模糊着色器然后将模糊纹理分成6个边?不知道如何做“分开”的部分。

1 个答案:

答案 0 :(得分:5)

模糊立方体贴图?这很难。

要进行数学上正确的高斯模糊,您需要将其转换为频域(球面谐波),在那里应用低通滤波器,然后进行逆变换。这不是一项简单的任务。

如果近似值足够,请执行以下操作。

  1. 创建一个空的目标立方体贴图。
  2. 对于立方体的每个面F,渲染面F和其他4个面中的相邻像素,如下所示:

     ___________
    |\         /|
    | \       / |
    |  \-----/  |
    |  |     |  |
    |  |  F  |  |
    |  |     |  |
    |  /-----\  |
    | /       \ |
    |/_________\|
    

    相邻像素的数量取决于模糊半径。

  3. 应用您最喜欢的模糊算法。
  4. 将F复制到目标立方体贴图。
  5. 每张脸重复2-4次。