After reviewing a few lessons on YouTube, I learned about the functions Translate and Rotate, but they are not recommended to use them for physical objects - it is better for them to use AddForce and AddTorque. But AddForce when moving an object also accelerates it, which I do not need. Question: how to move a physical object without accelerating it?

    2 answers 2

    if(rigidbody.velocity.sqrMagnitude < x * x){ // Возведение в квадрат для более удобного использования rigidbody.addForce(0, 0, 1); // это для примера } 

    By the way, yes, sqrMagnitude is the same magnitude, it just does not have that very one devouring the system resources of the square root. As you know, squaring is much easier than square root.

      For characters it is worth considering a navigation system in a unit. She herself will move, accelerate, slow down, look for a path. Your task will be reduced to the place where you need to move the character and set the speed parameter. Plus generate a map on which you can move. For a character with control at the WASD level, decide whether your character is inertial or non-inertial. If there is no inertia, which is completely arcade, instead of forces, you can immediately set speed and angular speed. An example of speed control directly in an arcade game is official unit lessons .