无论出于何种原因,我的 EGL 上下文客户端版本都没有在我的 OpenGL 应用程序中设置。我通过简单地执行以下操作来设置上下文:
final boolean supportEs2 = configurationInfo.reqGlEsVersion >= 0x20000;
if (supportEs2) { //<-- this resolves to true.
mGLView.setEGLContextClientVersion(2);
try {
mGLView.setRenderer(new PongDroidRenderer(getApplicationContext()));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
之后,由于未正确调用上下文,在尝试编译着色器时出现运行时异常。经过一番研究,我发现我无法从主线程调用 OpenGL ,但是,据我所知,我的应用程序本身不是多线程的(当然,系统是多线程的)。所以,我有点希望看看这里是否有人对我如何让这个工作有任何想法,如果提供了更多信息,只需说出这个词,我会在这里发布。