我使用 Apple 网站上的示例在我的 iPad OpenGL ES 2.0 应用程序上启用了 4x MSAA。在模拟器上效果很好,图像很好而且平滑,但是在设备上,边缘上有彩色伪影,应该进行抗锯齿处理。这存在于 iPad/iPad2 和 iPhone4 上,但不存在于模拟器中。我在下面附上了一张关于神器外观的图片。有谁知道这可能是什么?
问问题
5617 次
1 回答
10
它看起来很像你的着色器正在攻击,但你没有发布着色器所以我不能确定。请注意,当您打开 MSAA 时,着色器就可以针对像素区域内但三角形区域外的样本执行。如果没有 MSAA,这个像素根本不会导致片段着色器执行,但是现在您打开了 MSAA,如果其中一个样本处于活动状态,它必须为该像素执行片段着色器。
我发布的链接更深入地解释了这个问题。它还为您提供了避免此问题的方法,但我不知道 OpenGL ES 2.0 是否提供对质心采样的访问。如果没有,那么您将不得不为那些导致glDisable(GL_MULTISAMPLE)
. 当您需要激活多重采样时,您可以重新启用它。
于 2011-06-27T03:59:21.177 回答