如何在textureCube上实现WebGL模糊

时间:2017-03-09 07:37:45

标签: glsl webgl shader

我知道在使用texture2D时如何使用2D坐标实现高斯模糊。 但是如何在使用具有3D坐标的textureCube时模糊?

1 个答案:

答案 0 :(得分:2)

立方体纹理使用3D坐标作为方便,但实际上存储为6个2D纹理。因此,您可以2D模糊单个面,并理想地跨越样本面以在它们之间获得适当的模糊。这会产生扭曲的结果。

要获得更均匀的采样,您应该将您的立方体贴图视为映射到球体上。然后你想要做的是在球体表面上采样你的内核。基本上,根据您的采样方向,在此方向上在球体上创建一个切线空间,并在此切线空间中执行内核采样。