我们将一些使用 FBO 扩展 ( GL_OES_framebuffer_object ) 的 OpenGL ES 1.x 代码移植到 Android 上,并遇到了基于Tegra的设备 ( Tegra 2、Tegra 3 ) 的问题。问题是,虽然设备在支持的扩展列表中报告GL_OES_framebuffer_object扩展,但功能的一部分似乎被破坏了,特别是glGetIntegerv()
函数不接受任何与扩展相关的常量(例如GL_FRAMEBUFFER_BINDING_OES
)报告GL_INVALID_ENUM
错误。同时,其他与扩展相关的功能都可以正常工作。
- 这是一个已知问题吗?
- 有众所周知的解决方法吗?
- 有人也面临这个问题吗?
我们测试的设备是 Nexus7 和 Acer A500。