测量设备性能以设置应用程序中的详细程度

时间:2018-08-28 19:50:15

标签: android libgdx opengl-es-2.0

我有一个使用libgdx创建的3d应用。在某些较旧的设备上,当对象包含大量顶点时,FPS会大大下降。

我希望能够自动设置初始细节级别(用户可以根据需要更改其细节),在该细节级别中,我可以加载顶点数量减少的对象。

在显示3D场景之前,是否有任何库或良好的方法检查设备上的性能?

(我没有在我的应用程序中使用连续渲染)。

1 个答案:

答案 0 :(得分:1)

根据我的经验,这是一个可怕的兔子洞。即使您实施了复杂的解决方案(例如执行一些屏幕外渲染来测量设备的功能),由于节电技术或减少热量的措施而使设备暂时低于时钟频率或将资源转移到其他正在运行的过程中,结果也可能会造成混淆

除非您有足够的资源来解决问题,否则Android上大量的硬件变化使得任何形式的设备功能数据库都不切实际。

我认为最糟糕的方法是使用一些简单的代理来大致了解设备是否为高端设备。我使用了以下内容:

  • Android操作系统版本
  • CPU内核数
  • 受支持的图形API(OpenGLES版本以及是否支持Vulkan)
  • 可用RAM量
  • 设备分辨率
  • 片段着色器是否支持highp