1

我的问题是在 iPhone 上使用 OpenGL ES 1.1 进行不正确的 alpha 混合。与许多其他人的问题不同,不涉及纹理。

我在浅蓝色背景上画了几十个白色的小圆圈。每个圆圈都绘制为 GL_POINT。我正在制作从 alpha=1.0 到 alpha=0.0 的渐变动画。一切都在 iPhone 模拟器中完美运行。这是 alpha 接近 0 时动画最后一帧的快照:[已删除]

当我将它实际安装在原始的 2G iPhone 上时,就会出现问题。当 alpha 接近零时,每个点都呈现为深灰色圆圈,而不是呈现为微弱的白色圆圈。这是错误的 iPhone 渲染的快照:[已删除]

我使用的一些相关调用是:

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ;
glEnable(GL_POINT_SMOOTH);

这都是二维的,具有正交视图。

我发现了这个类似的问题,并确认 CAEAGLLayer.opaque 设置为 TRUE。

(对不起,非超链接图像。新的用户限制......)

4

0 回答 0