如何在没有值得计算的情况下减少XNA游戏的CPU使用率?

时间:2013-05-23 01:35:50

标签: performance xna

一个新的XNA游戏项目应用程序在其窗口处于活动状态时消耗相当多的CPU百分比。在我的台式PC上,它占据了2核处理器核心的30%左右。当窗口失去焦点时,游戏进入空闲模式并消耗大约1%的CPU。

在我最近使用XNA制作的图像查看器应用程序中,在没有进行图像处理的情况下重绘帧没有多大意义,因此我使用的是SuppressDraw()方法,顾名思义,它可以抑制花费资源绘制下一帧,显示最后绘制的帧。但是,仍存在一个问题,即应用程序不断浪费CPU来进行非常简单的输入更新。

当XNA应用程序不需要太多时,如何减少CPU使用率呢?

1 个答案:

答案 0 :(得分:4)

引自this问题

  

根据XBox Live独​​立游戏论坛的讨论,显然在一些处理器(和OS-s)上,当使用Game.IsFixedTimeStep的默认值时,XNA在一个核心上占用100%的CPU时间。

     

一个常见的解决方案(也适用于我)是将以下内容放在Game构造函数中:   IsFixedTimeStep = false;

更多详情here