我正在尝试制作一个基于 NDK 的 OpenGL 应用程序。在我的代码中的某个时刻,我想检查设备上可用的 OpenGL 版本。
\n\n我正在使用以下代码:
\n\nconst char *version = (const char *) glGetString(GL_VERSION);\nif (strstr(version, "OpenGL ES 2.")) {\n // do something \n} else {\n __android_log_print(ANDROID_LOG_ERROR, "NativeGL", "Open GL 2 not available (%s)", version=;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n问题是版本字符串始终等于"OpenGL ES-CM 1.1"。
我正在 Moto G (Android 4.4.4) 和 Samsung Galaxy Nexus (Android 4.3) 上进行测试,两者都兼容 OpenGL ES 2.0(moto G 也兼容 OpenGL ES 3.0)。
\n\nEGL_CONTEXT_CLIENT_VERSION我尝试在初始化显示时强制执行,但随后eglChooseConfig 返回 0 个配置。当我在默认配置中测试上下文客户端版本值时,它始终为 0 :
const EGLint attrib_list[] = {\n EGL_BLUE_SIZE, …Run Code Online (Sandbox Code Playgroud)