控制游戏中物体的移动速度

 

最近在开发TD游戏中发现,游戏中移动的物体,在android模拟器和真机上差别比较大。

例如模拟器上FPS=10,真机上FPS=50,那么模拟器上的物体移动速度就会很慢,而真机上却跑得很快。

怎样才能让物体的移动速度不受机器性能的影响呢?其实也比较简单,只要给物体一个移动速度(带方向),然后记录上一帧和当前帧的时间间隔,乘0.001换算成秒。

移动速度 * 时间间隔 ,就得出每帧物体需要移动的距离。这样在性能较好的机器上,每帧的时间间隔会比较短,在同样的移动速度下就会显得比较流畅了。

 

 

//delta 时间间隔
public void update(long delta ){
  //x坐标的移动距离
   centerx += speed * (dir) * delta  * 0.001;
}

 

你可能感兴趣的:(android)