public virtual void Move()
{
userInputHorizontal = Input.GetAxis("Horizontal");
userInputVertical = Input.GetAxis("Vertical");
//transform.Translate(Vector3.forward * (userInputVertical * -1)* moveSpeed* Time.deltaTime);
//так я изначально инициировал движение
playerRb.AddForce(playerRb.transform.forward * (userInputVertical * -1) * moveSpeed * Time.deltaTime);
//это - правильный подход.
transform.Rotate(Vector3.up * userInputHorizontal * rotationSpeed * Time.deltaTime);
// в этом ифе я заставляю персонажа останавливаться сразу после того как кнопка отпущена, ведь в физике есть такая штука как инерция
if (Input.GetKeyUp(KeyCode.W)|| Input.GetKeyUp(KeyCode.S))
{
playerRb.velocity = Vector3.zero;
playerRb.angularVelocity = Vector3.zero;
}
}