@gmatiushkov

Unity 2D Как сделать чтобы Floating Joystick, когда его отпускаешь, плавно принимал нулевое значение?

Использую Joystick Pack из ассет стора, Floating Joystick появляется в том месте экрана, где произведено касание. Когда отпускаешь руку, джойстик перестает быть активным, и значение оси сразу становится равно нулю. Как сделать чтобы выходное значение джойстика возвращалось к нулю не сразу, а за некоторое время?
  • Вопрос задан
  • 46 просмотров
Пригласить эксперта
Ответы на вопрос 1
DanceM
@DanceM Куратор тега Unity
Кто хочет -ищет способ, кто не хочет -ищет причину
Да, нужна инерция системы контроля полетом, как указал Василий Банников.

Например:
дано кИнерции = 0.5;
дано пороговоеЗначение = 0.1;
если (джойстикХ < Abs(пороговоеЗначение))
  силаДвиженияПоX = силаДвиженияПоX * кИнерции;
иначе
  силаДвиженияПоX = джойстикХ;

либо добавить инерцию на весь ввод:
дано пороговоеЗначение = 0.1;
дано кИнерции = джойстикХ < Abs(пороговоеЗначение) ? 0.5 : 0.05;
силаДвиженияПоX = силаДвиженияПоX * кИнерции + джойстикХ * (1 - кИнерции);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы