Nexus 5 5.1上的OpenGL问题

时间:2015-06-23 05:56:23

标签: android opengl-es android-ndk

我遇到了运行Android版本5.1.1的Nexus 5的问题。没有运行该版本的其他设备出现此问题。我正在使用NDK和OpenGL ES 1.1。

问题图像是第一个,图像有某种隔行扫描问题。第二个是图像应该是什么样子。我不知道是什么原因引起的。 (两个图像的大部分源纹理都被涂抹在云服务上进行测试。) 任何人都可以通过查看第一张图片可能会出错吗?任何见解都会有所帮助

(我无法发布图片,因为我没有足够的代表!)

破碎: http://postimg.org/image/kuvw7esz9/

工作: http://postimg.org/image/b5ulyf0uz/

编辑: 我没有做任何后期处理或任何花哨的事情。 这是破损设备的另一张图片。这里有趣的是暗红色是清晰的颜色,所以如果黑色适当地渲染到整个表面,它应该是红色的。并且它不是底部的直线,它就像步幅错误或其他东西。

另一张损坏的图片 http://postimg.org/image/nrcz7wxj3/

1 个答案:

答案 0 :(得分:1)

问题是由于我正在初始化gl的顺序。我从来没有在整个过程中看到过任何初始化错误,并且很奇怪它是如何出现在一个设备/操作系统版本上的。

<强> Borked

surface = eglCreateWindowSurface(display, config, window, NULL);

eglGetConfigAttrib(display, config, EGL_NATIVE_VISUAL_ID, &format);

ANativeWindow_setBuffersGeometry(window, 0, 0, format);

<强>固定

eglGetConfigAttrib(display, config, EGL_NATIVE_VISUAL_ID, &format);

ANativeWindow_setBuffersGeometry(window, 0, 0, format);

surface = eglCreateWindowSurface(display, config, window, NULL);