I was therefore trying to understand the differences between the different ways of moving an object in Unity and getting opposite answers in different places. Here is what I could understand though. I would ask you to check and correct me if I am wrong with one of them:
- transform.Translate has nothing to do with physics. It's simply teleports the purpose of point A in point B.
- MovePosition for kinematic body slips (instead of teleporting) the object from point A to B + interpolates the position of the object in the images to be rendered between fixedUpdate calls.
- MovePosition for non-kinematic body (aka dynamic) teleports from A to B.