OpenGL着色器中的Alpha通道

时间:2015-06-25 16:02:02

标签: opengl-es-2.0 cocos2d-x

我有alpha通道的纹理(例如来自.png文件),我想用另一个带有复杂alpha绘画的纹理来掩盖它。使用.jpg文件它很有效,但如果纹理有alpha本身,我会得到某种" ghosty"颜色,像这样

http://i.gyazo.com/5ba2f6594a0027584a6eaf57356588c5.png

所以,我的问题是:当glFragColor = vec4(r, g, b, 0.0)颜色之一高于零时,为什么r, g, b不透明?或者还有其他方法可以完成我的任务吗?

顺便说一句,使用cocos2d-x v3.5在iOS上工作。

1 个答案:

答案 0 :(得分:2)

接缝问题是混合功能。我已将混合功能设置为{GL_SRC_ALPHA, GL_ONE}并且效果很好。