"вызов API OpenGL ES без текущего контекста" - PullRequest
2 голосов
/ 01 августа 2010

Это то, что 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);

1 Ответ

4 голосов
/ 02 августа 2010

Вы должны использовать EGL.eglMakeCurrent перед вызовом любых функций OpenGL. Это сделает контекст текущим в потоке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...