0

我想检测那些运行我的游戏的设备是否支持某些 OpenGL 功能,例如 GL_MAX_VERTEX_ATTRIBS。我写了这些代码:

int[] result = new int[1];

GLES20.glGetIntegerv(GLES20.GL_MAX_VERTEX_ATTRIBS, result, 0);

我看过官方文档,上面说返回值必须高于8,但我得到的结果总是0。我在IOS上通过C语言很好地使用了这些东西,但在android上他们真的让我很困惑. 我应该怎么做才能在android上完成这种任务?

我发现“OpenGL Extensions Viewer”(http://www.realtech-vr.com/glview/)可以在android上检测到很多东西而且它在屏幕上只有一个listview,我可以在不创建的情况下获取这些信息吗?自定义 GLSurfaceView 和渲染器?

我发现了这个类似的问题 Get GPU info on Android without SurfaceView 但它也没有最佳答案。

我现在已经解决了这个问题,我将检测代码放在另一个 Activity 中,并按照本教程http://www.learnopengles.com/android-lesson-one-getting-started/获取 OpenGL ES 2.0 上下文,然后检索这些功能信息通过 gl API 调用,完成所有这些之后,我跳回我的主要活动。

4

1 回答 1

0

这里。该类GL10直接使用EGL. 这应该足以查询上下文的功能。

我想知道的是这些能力是否取决于所选择的EGLConfig......

于 2012-07-06T04:40:28.757 回答