title: Thrust movement on single axis, very strange behaviour
body: <p>I've noticed some very strange behaviour with a simple piece of code, I've stripped it down to remove any variables, time-step, acceleration, etc.</p>
  
  <p>I have a shape on the screen, pressing the left side of the screen thrusts the shape right, pressing the right side thrusts left. For some reason the shape favours moving left (<code>speed &lt; 0</code>). It seems to be that it decelerates properly when moving right but when moving left it finishes decelerating then continues for maybe 0.3 seconds before stopping.</p>
  
  <pre><code>float speed;
  int x;
  </code></pre>
  
  <p>Update method for the shape:</p>
  
  <pre><code>speed *= 0.9f;
  
  if (Math.abs(speed) &lt; 0.1f)
      speed = 0;
  
  if (Gdx.input.isTouched()) {
      if (Gdx.input.getX() &lt; Gdx.graphics.getWidth() / 2) {
          speed = 10;
      } else {
          speed = -10;
      }
  }
  
  x += speed;
  </code></pre>