我的问题是在iPhone上使用OpenGL ES 1.1的alpha混合不正确。与许多其他人的问题不同,纹理并不涉及。
我在淡蓝色的背景上画了几十个白色的小圆圈。每个圆都被画成一个GL_点。我正在设置从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);
这都是一个正交视图的二维。
similar question
并已确认CAEAGLLayer.opaque设置为TRUE。
(很抱歉没有超链接的图像。新用户限制…)