我是C Sharp的新手,并且撰写了一个带有XNA框架的游戏。我创建了一个项目,它是“Platformer”XNA入门套件的重大修改版本。XNA平台游戏(2D) - 帧率/ FPS波动
我看到(貌似)随机波动的帧率。有时它会一直以60 FPS的速度运行,有时会以60 FPS开始,然后下降到49-52,而其他时间则会立即下降到49-52。使用Fraps显示帧速率(不记录视频到磁盘)。
这个游戏的独特性要求它始终以60 FPS运行。
因此,似乎一些竞争条件或随机因素导致exe文件单独运行之间的差异。许多重建都没有区别。
都出现我的台式机和笔记本电脑完全相同的频率上的这种波动,所以它不是一个问题瓦特/硬件,抗病毒等
我搜索有关如何在XNA锁定的帧率,我的代码似乎正在做大量的工作,包括尝试以60 FPS进行钳制(使用IsFixedTimeStep,SynchronizeWithVerticalRetrace)。
这款游戏始终能够达到60 FPS,我始终能够看到它。当它以60 FPS运行时,根据我所知,它不会对CPU,RAM或任何其他资源征税。
其他人都遇到过吗?
谢谢, - S
您可以使用FRAPS的帧时间设置收集更多数据吗?另外:如果您使用垂直同步,并且放下一帧,您的帧速率将立即减半。如果它在几分之一秒内完成,那么报告的帧速率将在30到60 FPS之间。 – 2011-02-23 13:55:03
“这款游戏的独特性要求它始终以60 FPS运行。”真?我很好奇这是什么原因。 – Justin 2011-02-24 20:05:47