在混合模式下将Open GL中的两个半透明未预乘的纹理结合起来?

我正试图弄清楚如何使用Open GL来合并两个无法预测的纹理(一个在另一个之上)。

两个纹理都具有0-alpha的区域。 我希望综合结果也是无法预测的。 我尝试了GL_ONE,GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA等的多种组合,但还没有任何运气。

这就是我的意思(Texture1和Texture2是输入纹理,Combo是所需的组合):

在这里输入图像描述


哇......在这之后太久,看起来我为这个问题创建的图像让我得到了答案。

以下是诀窍:

glBlendFuncSeparate(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA,GL_ONE,GL_ONE_MINUS_SRC_ALPHA);

链接地址: http://www.djcxy.com/p/31839.html

上一篇: Combine Two Translucent Unpremultiplied Textures in Open GL With Blend Modes?

下一篇: Alpha blending and UIView background color