在Android上检测良好的GPU

在Android上检测良好的GPU,android,opengl-es,cpu,gpu,tegra,Android,Opengl Es,Cpu,Gpu,Tegra,我正在寻找一种安全的方法来检测当前的GPU是否属于当前的高端配置(如摩托罗拉的Atrix或Galaxy s2),这样我就可以在运行时在游戏中实现一些更复杂的视觉效果 有人成功地做过类似的事情吗?虽然我检测到双核CPU,它通常会有一个好的GPU,但是我没有足够的设备来测试它是否能在大多数情况下正常工作。 安卓在Linux内核之上,你是否考虑顺序读取并解析 /PROC/CPUINFO < /C>文件> < /P> < P>安卓在Linux内核之上,您是否考虑顺序阅读并解析 /PRO/CPUFION<

我正在寻找一种安全的方法来检测当前的GPU是否属于当前的高端配置(如摩托罗拉的Atrix或Galaxy s2),这样我就可以在运行时在游戏中实现一些更复杂的视觉效果


有人成功地做过类似的事情吗?虽然我检测到双核CPU,它通常会有一个好的GPU,但是我没有足够的设备来测试它是否能在大多数情况下正常工作。

安卓在Linux内核之上,你是否考虑顺序读取并解析<代码> /PROC/CPUINFO < /C>文件> < /P> < P>安卓在Linux内核之上,您是否考虑顺序阅读并解析<代码> /PRO/CPUFION< /代码>文件?

< P>获取可用的处理器: ()

获取可用的处理器: ()

如果那些“更复杂的视觉效果”需要OpenGL ES扩展,您可以简单地测试这些扩展是否存在

如果他们不这样做,从长远来看,允许用户配置他们的图形设置可能会更好。否则,如果出现新的GPU,它将不会出现在您的GPU硬编码列表中,因此它们将获得低质量的图形。

如果那些“更复杂的视觉效果”需要OpenGL ES扩展,您可以简单地测试这些扩展是否存在


如果他们不这样做,从长远来看,允许用户配置他们的图形设置可能会更好。否则,如果出现新的GPU,它将不会出现在您的GPU硬编码列表中,因此它们将获得低质量的图形。

由于我制作的是应用程序而不是游戏,所以我需要自动配置最好的。对于纹理的大小,我测试了堆大小和使用的堆。如果在软件模式下运行(PixelFlinger),也可以使用小纹理

如果它有大量的堆空闲和2个CPU,那么我在OpenGL2.0中用AA运行3d引擎。到目前为止,这对我们拥有的设备数量非常有效


注意:我注意到有些手机ROM在有2个cpu时报告1个cpu空闲

因为我正在制作一个应用程序而不是一个游戏,所以我需要自动配置最好的应用程序。对于纹理的大小,我测试了堆大小和使用的堆。如果在软件模式下运行(PixelFlinger),也可以使用小纹理

如果它有大量的堆空闲和2个CPU,那么我在OpenGL2.0中用AA运行3d引擎。到目前为止,这对我们拥有的设备数量非常有效


注意:我注意到有些手机ROM在有2个cpu时报告1个cpu空闲

我已经考虑过了。有人测试过吗?它可靠吗?我已经考虑过了。有人测试过吗?它可靠吗?高端GPU设备上是否存在最有可能出现的特定扩展?@user642252:你必须自己去查一下;我不使用OpenGL ES(我使用桌面GL,两者非常相似)。同样,如果您没有根据这些扩展的存在来进行图形设置,那么最好让用户放大图形设置。至少,给他们这样做的选择。高端GPU设备上有没有最有可能出现的特定扩展?@user642252:你必须自己查找;我不使用OpenGL ES(我使用桌面GL,两者非常相似)。同样,如果您没有根据这些扩展的存在来进行图形设置,那么最好让用户放大图形设置。至少,给他们这样做的选择权。