Hey there community, I'm new to the forums and Unity, pleased to meet you all I'm trying to do a simple control mechanic, but can't seem to figure it out: The Problem My main character (blue cube) automatically moves forward in the world like on rails none-stop, and the player can only translate left, right or stay in the middle between three positions that I'm representing as game objects (red cubes). Player does this by tapping on one of the red boxes next to the character. Kind of like switching train tracks. So the red boxes are just used as transform.position targets. The player doesn't move forward quicker, he just lerps left or right quickly or slowly depending on how far he is from the next target cubes. What I'm trying to accomplish What I'm trying to do is LERP the player's blue cube left or right between one of the red target cubes, but the velocity it takes to reach the target (left or right) should be relative to the distance to the next red cubes. So the character needs to reach the target (left or right) before it reaches the next red cubes. In other words, if the player is close to the next red cubes, the character should lerp quicker left or right. But if the character is at a further distance, the character would lerp slower since it has more time to reach the target. I really hope this made sense. If I didn't explain myself properly, please excuse me, I'm learning. Thanks a lot in advance!