WP7上的XNA性能和设置

时间:2012-03-16 07:40:26

标签: c# xna farseer

我一直在玩IsFixedTimeStep和TargetElapsedTime,但我无法获得高于30fps的fps。这是在模拟器和我的HTC HD7手机上。

我也试图在Farseer中使World.Step()设置正确,但还没有为此找到一个好的设置。

如果我想让它以60fps运行,那么理想情况下三个设置(IsFixedTimeStep,TargetElapsedTime和World.Step)应该是什么?

谢谢!

1 个答案:

答案 0 :(得分:2)

只要您运行的是Mango Deployed App,就可以让游戏以60fps运行

以下代码取自:MSDN: Game at 60fps

游戏计时器间隔以60Hz运行

timer.UpdateInterval = TimeSpan.FromTicks(166667);

创建事件处理程序

    public Game1()
    {
       graphics = new GraphicsDeviceManager(this);

       graphics.PreparingDeviceSettings += new EventHandler<PreparingDeviceSettingsEventArgs>(graphics_PreparingDeviceSettings);

       // Frame rate is 60 fps
       TargetElapsedTime = TimeSpan.FromTicks(166667);
    }

然后实现处理程序

void graphics_PreparingDeviceSettings(object sender, PreparingDeviceSettingsEventArgs e)
{
   e.GraphicsDeviceInformation.PresentationParameters.PresentationInterval = PresentInterval.One;
}