在iOS 10更新后,我的图像处理应用在具有A7芯片(iPhone 5s和iPad Mini 2测试)的设备上表现得非常奇怪:
渲染需要很长时间并产生破碎的结果。 Instruments公布了一些glDrawElements
次调用返回GL_INVALID_OPERATION
。不过,我无法弄清楚原因。
相同的代码在较新的设备(A8和更好的设备)和iOS 9中的所有设备上运行得非常好。苹果公司是否改变了我不知道的事情?
更多背景信息:
GL_HALF_FLOAT_OES
类型EXT_color_buffer_half_float
扩展名来渲染这些纹理EXT_shader_framebuffer_fetch
扩展程序来处理我的部分过滤器中的像素答案 0 :(得分:0)
事实证明,我只在部分着色器(例如gl_FragColor
)中部分分配了gl_FragColor.rg = vec2(1.0, 0.0);
,这导致了iOS 10中的错误行为。可能只与{{1}组合但是 - 键入渲染目标。
当我总是分配完整的矢量时(即使其他部分未被使用......),它就像一个魅力。