作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
更新到 iOS 10 后,我的图像处理应用程序在配备 A7 芯片的设备(iPhone 5s 和 iPad Mini 2 测试)上表现非常奇怪:
渲染需要很长时间并且会产生错误的结果。 Instruments 显示一些 glDrawElements
调用返回 GL_INVALID_OPERATION
。不过,我无法找出原因。
相同的代码在较新的设备(A8 和更好的设备)和 iOS 9 的所有设备上都运行良好。Apple 是否改变了我不知道的东西?
更多背景信息:
GL_HALF_FLOAT_OES
类型的纹理EXT_color_buffer_half_float
扩展来渲染这些纹理EXT_shader_framebuffer_fetch
扩展来就地处理我的一些滤镜中的像素最佳答案
事实证明,我只是在我的一些着色器中部分分配了 gl_FragColor
(例如,gl_FragColor.rg = vec2(1.0, 0.0);
),这导致iOS 10 中的错误行为。不过,可能仅与 GL_HALF_FLOAT_OES
类型的渲染目标结合使用。
当我总是分配完整的向量时(即使其他部分未使用……),它就像一个魅力。
关于ios - iOS 10 中 A7 设备上的 OpenGL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39534245/
我是一名优秀的程序员,十分优秀!