1

使用相同的代码,我有:

5-10% 的 CPU 使用率IsFixedTimeStep = trueTargetElapsedTime = TimeSpan.FromSeconds(1 / 60f)

50-60% CPU 使用率IsFixedTimeStep = trueTargetElapsedTime = TimeSpan.FromSeconds(1 / 30f)

通过降低帧速率,人们应该会期望更少的 CPU 使用率。我尝试过不同的代码,结果相似。有人知道原因吗?

4

1 回答 1

0

如果我不得不猜测(我必须猜测,因为您提供的信息很少),我会说这是 GPU 和 CPU 之间的交互。

看看这篇博文

基本上,在 60 FPS 时,您可能受到 GPU 限制。CPU 处于空闲状态,等待 GPU 在开始绘制另一帧之前绘制一帧。您可能正在丢帧。

在 30 FPS 时,GPU 能够跟上,因此 CPU 必须更频繁地发送帧。

但是,这只是一个猜测。您必须检测您的代码以正确检查这些内容。

于 2012-07-17T08:32:14.417 回答