My game object is a tank which is not realistic one, because my game is a arcade type instead simulation type. The tank object is a non-Kinematic Rigidbody, with a Box Collider.
I don’t want my object behaves physically realistic, if I use AddRelativeForce and AddRelativeTroque, the tank will move like a hovercraft.
The options left are Translate and MovePosition. I tried MovePosition first because it is a Rigidbody function which suppose physics friendly. However, MovePosition is more difficult to use, it seems using the world coordinate, I need to figure out the forward direction, lucky I figured out that. But when put the tank on the terrain, MovePosition seems not terrain friendly, my tank move jumpy when moving down slope of terrain.
I replace MovePosition with Translate, it is simpler to use, and the outcome seems like MovePosition, and it move smoothly when my tank object moving down the terrain slope.
So my trial on moving a Rigidbody Translate win, and I found the Translate collision against other Rigidbody objects is no different to MovePosition. So is it “legit” to use Translate on non-Kinematic Rigidbody?