Sky Delivery — Добавил тряску
Реализовал в своём лётном симуляторе небольшую и достаточно простую фишку, которая добавляет ×10 к общей атмосфере. Казалось бы — обычная симуляция турбулентности. Но с ней игра ощущается совсем иначе.
Идея простая: нужна функция, которая в качестве параметра принимает силу турбулентности и возвращает случайное значение. Затем мы берём это значение и применяем его как силу к крыльям самолёта, как бы слегка их подкручивая.
Я перепробовал разные варианты псевдорандома, но сохранялась проблема: на длинной дистанции самолёт очень сильно перекашивался. В моём понимании он должен был слегка дрожать вокруг своей продольной оси, но в среднем оставаться в том положении, которого от него ждёт игрок, а не заваливаться на спину.
В итоге я пришёл к тому, что использую функцию синуса, которая после каждого цикла (2pi) случайным образом меняет частоту и амплитуду. Это решение идеально легло в физику самолёта. Результатом более чем доволен.
Ещё я добавил обычный ветер со статичным направлением и колеблющейся силой. На всё про всё ушло несколько часов, но на выходе я получил огромный прирост в ощущениях от управления самолётом.
Теперь он не просто стерильно летит в пространстве, реагируя лишь на ввод от игрока, а ведёт себя так, как мы ожидали бы в реальной жизни.
Спасибо за внимание! Подписывайтесь здесь или в телеге, чтобы следить за прогрессом.