So, I'm trying to rotate the player as they turn left and right in a top down view. The rotation works correctly when moving right, but fails going left.

Here's the code that handles the rotation

rotation = move_toward(rotation, PI / 12 * direction.x, PI / 2 * direction.x * delta)

The numerical values look right, giving me 0.261 rads going right and -0.261 rads going left ... but the rotation going left continues to go clockwise and stops just before a full 180.

Is there some quirk with rotation that I'm missing? My rubber ducks have remained silent.

all 3 comments

sorted by: hot top controversial new old
[–] [S] 9 points 3 years ago (2 children)

Took a walk and figured out my issue. I shouldn't have used direction.x in the increments argument. move_toward figures that out for you.

  • source
  • hideshow 2 child comments