【问题标题】:Detect available OpenGL ES versions检测可用的 OpenGL ES 版本
【发布时间】:2010-12-03 03:25:59
【问题描述】:

我正在开发一款适用于 Android 的游戏,并使用 OpenGL ES 2.0 制作。现在我想添加对不支持 OpenGL ES 2.0 的设备的支持,并改用 OpenGL ES 1.0。

我的问题是我似乎无法检测到正确的 OpenGL ES 版本。我在 SDK 中使用了示例,但它只是在我的 Legend 上返回 0。

这是我尝试过的:

    ActivityManager am = (ActivityManager) getSystemService(getApplication().ACTIVITY_SERVICE);
    ConfigurationInfo info = am.getDeviceConfigurationInfo();

    String eglVersion = info.getGlEsVersion();
    if (eglVersion == "2.0") GameLibrary.load_gl20();
    else GameLibrary.load_gl10();

(GameLibrary 是一个包含一些本地方法的类,load_glxx 是调用 System.loadLibrary() 的静态方法,带有正确的 opengl ES 版本的特定库) 问题正如我之前所说,info.getGlEsVersion() 返回“0.0”

【问题讨论】:

  • 您提交的代码只返回您输入的值。它没有给你任何关于 OpenGL 的信息。

标签: java android opengl-es


【解决方案1】:

这可能过于简单了,但为什么不先在错误陷阱中尝试 ES 2.0,然后在加载失败时回退到 1.0?

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2023-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-22
相关资源
最近更新 更多