0
我注意到有一段简单的代码一些非常奇怪的行为,我已经剥离下来,以消除任何变量,时间步长,加速度等推力运动,很奇怪的行为
我在屏幕上有一个形状,按下屏幕的左侧将形状向右推,按右侧向左推。由于某种原因,形状偏向左移(speed < 0
)。它似乎是正确减速时正确地移动,但向左移动完成减速,然后继续约0.3秒,然后停止。
float speed;
int x;
对形状更新方法:
speed *= 0.9f;
if (Math.abs(speed) < 0.1f)
speed = 0;
if (Gdx.input.isTouched()) {
if (Gdx.input.getX() < Gdx.graphics.getWidth()/2) {
speed = 10;
} else {
speed = -10;
}
}
x += speed;
我注意到你的第一条if语句没有大括号。这是因为什么原因? – DrinkJavaCodeJava 2013-03-20 16:54:56