根据设备功能自定义线程的最佳方法是什么

时间:2018-08-20 14:18:59

标签: java android multithreading jmonkeyengine

我正在开发一个android 3d游戏

游戏可以在高设备功能下更好地运行

但是我仍然可以通过减少纹理或自定义游戏的帧频来增强游戏,或者增加自定义线程的睡眠时间等。

但我需要根据设备进行操作

我的意思是这样做的最佳实践

我正在考虑做这样的事情

int count = Runtime.getRuntime().availableProcessors();
if(count < 4){
   //// load low textures and decrease frame rate and so on
}else{
   //// load high textures and increase frame rate and so on
}

但是我知道这不是一个可靠或好的解决方案

1 个答案:

答案 0 :(得分:1)

我认为仅使用处理器数量并不是一个可靠的方法。 GPU的功能决定了很多事情。 我看到两个选择;

  1. 让用户决定(就像大多数游戏一样)

预先配置许多配置文件,然后让用户使用菜单进行尝试。有些人会更喜欢性能较慢,而更好的图形,反之亦然。作为开发人员,我们由谁来决定哪个更合适?

  1. 运行性能测试并据此做出决定

加载某些内容(一个小场景),以无限制的帧速率运行一会儿。测量性能(例如{{1}),然后根据性能决定性能。

相关问题