My plan is that a gameobject with a rigidbody attached to it should follow a target object.
In my script the gameobject does follow the target but it doesn’t look smooth.
Is there any other way to make a rigidbody smoothly follow a gameobject?
I tried using Vector3.MoveTowards and it looks better but the object doesn’t collide with other objects.
Thats not what I need.
Otherwise, have you the interpolation enabled for your rigidbdy? According to the documentation, it is important in order to have smooth moves.
EDIT
AS SpaceManDan said, with the code above, there could be strange results with the physics (mainly during collisions). If you want to make the movement of your rigidbody with a nice collision handling, then you could use something like this :
But this is only one of the many ways of impact the velocity of the rigidbody. I recommend you to take a look at there.
And do not forget to enable the interpolation on your rigidbody.