У меня есть автомобильная игра, и идея в том, что игрок пьян. Я хочу иметь задержку ввода от мыши, где вы перемещаете мышь из стороны в сторону, чтобы повернуть.
Как я могу установить постоянную задержку между вводом, который дает пользователь, и количеством поворотов автомобиля?
Прямо сейчас у меня есть это:
h = Mathf.Lerp(h, (((Input.mousePosition.x / Screen.width) * 2) - 1), Time.deltaTime * 2);
То, что происходит, это поворот с задержкой, но очень медленный, другими словами, если я очень быстро двигаю мышь, машина поворачивает очень медленно, но если я проворачиваю множитель для Time.deltaTime
, машина поворачивает быстрее, но эффект задержки минимизируется ,
Как еще я мог это сделать?
В итоге я использовал сопрограмму, потому что (насколько я понимаю) задержка будет постоянной независимо от производительности устройства, на котором запущена игра.
Это мой код:
источник