如果是为Windows Phone构建的话,我想以30fps的速度限制我的游戏的FPS,因为我不需要它以60fps的速度运行它并且我从太多的角度来看,最好让它上限由于电池耗尽,在移动设备上。
我使用了XNA for Windows Phone 7使用的相同代码片段:
/(\+8|8)/
但是......因为它正在限制FPS,它也会影响其他一切,导致口吃和声音问题。因此,我想我做错了什么。
任何有助于我的事情都会很棒,因为我无法在互联网上找到关于这个问题的任何内容(大多数人都希望相反:D)
答案 0 :(得分:0)
要解决您的声音问题,请查看多线程并在单独的无上限线程中运行您的声音系统。对于游戏代码,特别是更新资产的代码,您的方法应该有效,但我个人也是这样做的。
// in your game1 class variable definitions
private const float timeToNextUpdate = 1.0f / 30.0f;
private float timeSinceLastUpdate;
//in your game1 update method
public override void Update(GameTime gameTime)
{
timeSinceLastUpdate += (float)gameTime.ElapsedGameTime.TotalSeconds;
if (timeSinceLastUpdate >= timeToNextUpdate)
{
//update game
timeSinceLastUpdate = 0;
}
//systems you don't want to limit would be updated here
}