我正在使用以下内容来启用 alpha 混合
glEnable(GL_BLEND);
glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
透明度取自似乎有效的纹理,使用最简单的片段着色器:
void main(void) {
gl_FragColor = texture2D(texture, texCoordOut);
}
虽然它与背景颜色很好地融合在一起,但它不适用于使用相同 alpha 混合的其他对象。我真的不知道如何解释,所以这是一张图片:
我究竟做错了什么?