public void FixedUpdate() { var targetVel = (Vector2)transform.position - target; var distance = targetVel.magnitude; targetVel = targetVel.normalized * maxSpeed; Vector2 force = (targetVel - steering.Velocity) * jerkiness; steering.AddForce(force); }
public void FixedUpdate() { var targetVel = target - (Vector2)transform.position; var distance = targetVel.magnitude; var speedMultiplier = Mathf.Clamp(distance / SLOWING_RADIUS, 0.0f, 1.0f); targetVel = targetVel.normalized * maxSpeed * speedMultiplier; Vector2 force = (targetVel - steering.Velocity) * jerkiness; steering.AddForce(force); }