开发者

Eraser in OpenGL ES iphone

i h开发者_Python百科ave two images which are overlapping on each other.(the way in which cards are placed on top of each other)

now if i move my finger over the top most image that portion of the image should become transparent.(opacity of that part should become 0).

i am new to OpenGL ES development.

kindly help me out or give me any suggestion to complete this functionality.

Thanks in advance


You're going to need render-to-texture using Framebuffer Objects (FBOs). Render to the desired texture, but only to the alpha channel, which is done using glColorMask (With it you can mask all color channels except alpha), and then draw the pattern into the alpha channel, setting alpha to 0.0, then display the textures as normal.


I just did something similar, and I found a solution in GLBlending:

if (eraseMode) {
    glBlendFunc(1.0,0.0);
}
else {
    glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
}

Some cosmetics are needed around this, but it's a simple solution that fits basic needs.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜