画面内のオブジェクトの速度を上げる簡単な関数があります。
float Velocity = 10;
float MaxVelocity = 100;
float VelocityGiven = 0;
RectF position = new RectF(ScreenHeight/2, ScreenWidth,0,0);
public void update()
{
if(VelocityGiven < MaxVelocity)
{
Position.left -= Velocity;
VelocityGiven += Velocity;
}
}
public void draw(Canvas canvas)
{
canvas.drawBitmap(Bitmap,Position,null);
}
ただし、電話の画面サイズやピクセル密度によっては、この関数ではオブジェクトの移動が速すぎたり遅すぎたりします。
Galaxy S4で試してみると、魔女の画面解像度が非常に大きく、オブジェクトの動きが遅くなります。
しかし、ローエンドのデバイス (小さな画面) で試してみると、オブジェクトが非常に速く動きます。それを避けるにはどうすればよいでしょうか?
私はすでにすべての電話で FPS を制御しており、これは 30 FPS で実行されます。したがって、更新率についてではありません。