gpt4 book ai didi

java - 对话框和 FPS 更改

转载 作者:行者123 更新时间:2023-11-30 03:10:58 25 4
gpt4 key购买 nike

这是一个非常宽泛的问题,但是有人知道为什么对话框似乎会影响 Android 上的帧率吗?例如,当我在游戏运行时显示和关闭对话框时,移动变得缓慢且断断续续。但是,游戏内爆炸的帧率会提高。我已经尝试了所有我能想到的事情,但似乎没有任何帮助。 非常感谢任何帮助。

我如何显示对话框:

private void showPauseMenu() {
isRunning = false; //tells the game thread that the game is no longer running
paused = true; //tells the game thread that the game is paused
ourThread = null; // nulls the Thread object until the game is resumed
pause.show();
}

我如何摆脱对话框并重新开始游戏:

isRunning = true;
ourThread = new Thread(this);
if (paused) {
paused = false;
pause.dismiss();
}
ourThread.start();

FPS计算

    if (elapsedTime < 33) {
timeToSleep = 33 - elapsedTime;
} else {
timeToSleep = 0;
Log.i("fps", "sleeping over 33ms");
}
try {
Thread.sleep(timeToSleep);
} catch (InterruptedException e) {
e.printStackTrace();
}
Log.i("fps", "" + 1000 / (elapsedTime + timeToSleep));

最佳答案

对话框也在 UI 线程中运行。 UI 线程中运行的工作负载越多,FPS 就越低。即使您在游戏线程中运行游戏逻辑,所有图形工作仍会在 UI 线程中运行。这就是对话会影响您的 FPS 的原因。

关于java - 对话框和 FPS 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20988822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com