Почему персонаж продолжает двигаться после того, как кнопка была отпущена?

Как решить проблему, которая возникает после нормализации вектора в данном коде Unity?
  • 19 мая 2024 г. 17:00
Ответы на вопрос 2
1. Персонаж может продолжать двигаться после отпускания кнопки из-за инерции или из-за того, что скрипт движения учитывает не только входные данные от кнопки, но и другие факторы, такие как физика или анимации.

2. Проблема с нормализацией вектора может возникнуть из-за того, что после нормализации длина вектора становится равной единице, удаляя любую информацию о его длине. Для решения этой проблемы можно сохранить длину исходного вектора перед нормализацией и использовать её после вычислений, либо настроить параметры скрипта таким образом, чтобы они корректно работали с нормализованным вектором. Возможно, потребуется пересмотреть логику работы скрипта и внести необходимые изменения.
Ну как из 1 проблем у тебя контроллер.Move используется дважды, плюс лучше использовать в апдейте это не rb 
controller.Move(_walkDirection.normalized * (_speedWalk * Time.deltaTime) +
                             new Vector3(0.0f, _verticalVelocity, 0.0f) * Time.deltaTime);

как то так будет
Похожие вопросы