我正在尝试做:
glBindBuffer(GL_PIXEL_PACK_BUFFER, pbo_id);
在 android 4.3 中,我得到了“枚举错误代码”,尽管文档说我可以使用 GL_PIXEL_PACK_BUFFER。
也许我没有使用“OpenGL ES 3.0”?我需要做什么来强制使用 v3?
OpenGL上下文:
EGLint numConfigs = 0;
EGLint configAttribs[] = {
EGL_SURFACE_TYPE, EGL_WINDOW_BIT,
EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT,
EGL_RECORDABLE_ANDROID, 1,
EGL_RED_SIZE, 8,
EGL_GREEN_SIZE, 8,
EGL_BLUE_SIZE, 8,
EGL_ALPHA_SIZE, 8,
EGL_NONE
};
result = eglChooseConfig(mEglDisplay, configAttribs, &mEglConfig, 1,
&numConfigs);
if (result != EGL_TRUE) {
fprintf(stderr,"eglChooseConfig error: %#x", eglGetError());
return UNKNOWN_ERROR;
}
EGLint contextAttribs[] = {
EGL_CONTEXT_CLIENT_VERSION, 3,
EGL_NONE
};
mEglContext = eglCreateContext(mEglDisplay, mEglConfig, EGL_NO_CONTEXT,
contextAttribs);
if (mEglContext == EGL_NO_CONTEXT) {
fprintf(stderr,"eglCreateContext error: %#x", eglGetError());
return UNKNOWN_ERROR;
}