使用OpenGL-ES在涂料应用中的模糊效果(湿润效果)

时间:2011-08-08 09:56:05

标签: iphone ios ipad opengl-es paint

我正在使用 OpenGL-ES iPhone 开发Paint应用程序,我想实现高斯模糊效果(Wet in Wet)进行绘画。请查看描述我对模糊效果的要求的图像:

Blur effect

我试图搜索OpenGL功能的方法,但没有得到任何东西。任何人都可以指导我在这个问题上找到正确的方向..任何形式的帮助或建议将受到高度赞赏..谢谢..

2 个答案:

答案 0 :(得分:2)

您应该可以将相同的画笔笔划分开多次像素,以获得所需的效果。如果使用高斯分布抖动渲染器,您将获得高斯模糊。

这类似于使用累积缓冲区的抖动抗锯齿,但不使用子像素偏移,而是使用与您想要的模糊效果一样大的多像素偏移。您可能希望渲染大约16次以使其看起来平滑。 http://www.opengl.org/resources/code/samples/advanced/advanced97/notes/node63.html

这与创建运动模糊的抖动类似(或实际上相同)。 http://glprogramming.com/red/chapter10.html

你甚至不需要在这里使用单独的累积缓冲区,只需渲染每次传递的alpha加起来就是实体。有一点需要记住,你想要总是在相同的偏移上抖动,这样连续的帧看起来是一样的(即如果你使用随机偏移,那么每帧的模糊效果都会略有不同)。

答案 1 :(得分:1)

我假设你想在图像上应用它。我不知道如何在OpenGL ES中完成此操作。但您可以尝试使用 awesome image processing library 。除了Guassian-Blur之外,它还提供其他图像效果......

快乐模糊......