我有一种隐隐的感觉,我做错了。它现在可以工作,重力会将物体向下拉向地面,但我很难控制物体的速度。
这是一个球向下跳跃和落下的过程。
我有另一个名为“jump”的函数,只需将 jSpeed
添加到它的 yVel
中。
我可以增加 gravity
,它会下落得更快。
我可以增加 jSpeed
的速度,它会上升更长时间,但速度不会更快。
但我无法让它以更快的速度执行所有操作。它看起来非常缓慢,可能是因为我的模拟器平均运行在11 fps。
这是我的模拟器问题,还是我的问题?
float time = elapsedTime/1000F;
if (speed < maxSpeed){
speed = speed + accel;
}
if(mY + mVelY < Panel.mHeight){ //0,0 is top-left
mVelY += (speed);
}
if (!(mY + height >= Panel.mHeight)){
mVelY = mVelY + gravity ;
}
mX = (float) (mX +(mVelX * time));
mY = (float) (mY + (mVelY * time));
speed = speed + accel;
->speed
可能大于maxSpeed
。 - Gabriel NegutSystem.currentTimeMilis();
我更新了我的问题中的代码以展示这一点。 - user773737