这就是Dalvik LogCat每次取消注释最后一行时所说的内容。因此,在此过程中,根本没有创建当前上下文。为什么?谢谢你的帮助。
final EGL10 egl = (EGL10) EGLContext.getEGL();
final EGLDisplay eglDisplay = egl.eglGetDisplay(EGL10.EGL_DEFAULT_DISPLAY);
egl.eglInitialize(eglDisplay, version);
int[] configSpec = {
EGL10.EGL_NONE
};
final EGLConfig[] config = new EGLConfig[1];
int num_configs[] = new int[1];
egl.eglChooseConfig(eglDisplay, configSpec, config, 1, num_configs);
final EGLContext eglContext = egl.eglCreateContext(eglDisplay, config[0], EGL10.EGL_NO_CONTEXT, null);
final GL10 gl = (GL10) eglContext.getGL();
int b[] = new int[w * (h)];
IntBuffer ib = IntBuffer.wrap(b);
ib.position(0);
gl.glReadPixels(w, 0, w, h, GL10.GL_RGB,GL10.GL_UNSIGNED_BYTE, ib);
答案 0 :(得分:4)
在调用任何OpenGL函数之前,您应该使用EGL.eglMakeCurrent。这将使上下文中的上下文成为当前。