iOS 10 中 A7 设备上的 OpenGL 错误

OpenGL errors on A7-devices in iOS 10

更新到 iOS 10 后,我的图像处理应用程序在带有 A7 芯片的设备上表现非常奇怪(iPhone 5s 和 iPad Mini 2 测试):

渲染需要很长时间并且产生了错误的结果。 Instruments 揭示了一些 glDrawElements 调用 return 与 GL_INVALID_OPERATION。不过,我无法找出原因。

相同的代码在较新的设备(A8 和更好的设备)和 iOS 中的所有设备上运行得非常好 9. Apple 是否改变了我不知道的东西?

更多背景信息:

事实证明,我只是在我的一些着色器(例如,gl_FragColor.rg = vec2(1.0, 0.0);)中部分分配了 gl_FragColor,这导致了 iOS 10 中的错误行为。可能仅在不过,与 GL_HALF_FLOAT_OES 类型的渲染目标相结合。

当我总是分配完整向量时(即使其他部分未使用......),它就像一个魅力。