首页 > 解决方案 > 根据设备功能自定义线程的最佳方法是什么

问题描述

我正在开发一个 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
}

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

标签: javaandroidmultithreadingjmonkeyengine

解决方案


我认为仅使用处理器数量不是一种可靠的方法。GPU 的能力决定了这么多。我看到两个选项;

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

预配置多个配置文件并让用户使用菜单进行尝试。有些人会更喜欢较慢的性能以支持更好的图形,反之亦然。作为开发人员,我们是谁来决定哪个更可取?

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

加载一些东西(一个小场景),以不受限制的帧速率运行它一会儿。衡量性能(tpf例如)并据此决定能力。


推荐阅读