2010-03-24 96 views
0

所以我有一个背景画线,黑色和白色。我希望能够画出这一点,保持黑色线条在那里,并只绘制白色的地方。我可以用OpenGLES混合和混合选项复杂的问题

glBlendFunc(GL_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA); 

做到这一点,黑色的停留黑白得到我想要的颜色。然而在白色区域,我想能够画出一些颜色,选择另一种颜色然后混合。然而,这是行不通的,因为混合功能会混乱。

所以我在想的是有一个lrainrawing framebuffer和一个用户绘图framebuffer。用户使用不同的混合绘制到用户绘制帧缓冲区,然后切换混合选项并绘制到绘制帧缓冲区。但是我不知道OpenGL是否足以说明这是否可行,或者是一个愚蠢的想法。

非常感谢

回答

0

如果图形是在白色区域透明,你可以这样做:先画你的彩色区域线描超过他们,使用标准GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA交融。

+0

我想过这个,但首先它在白色区域不透明,但它是白色的,但我可以编辑它。更重要的是,我不刷新帧缓冲区以保存CPU ... – DevDevDev 2010-03-25 17:29:42