Перейти к содержанию

Реалистичная тряска камеры


Antonshka

Рекомендуемые сообщения

Привет всем!

Вам когда-либо приходилось делать эффект тряски для игровой камеры? То есть такое движение камеры как если бы снимали на телефон, к примеру.

Некоторое время назад я использовал такой алгоритм. Он хоть и работает нормально, но движение все-равно не естественное.

Спойлер

image.png

 

(0 - 20 / 1000) - здесь число 20 это рандомное число, генерируемое lua нструкцией math.random. То есть при 20, число генерируется от -20 до 20. Далее длится на 1000. После того как динамическое число сравняется с этим полученным числом, снова сработает math.random. И цикл повторится.

 

Движения хоть и получаются в разных диапазонах, но они все протекают с одинаковым характером. Вначале увеличение скорости, потом уменьшение. В реальности же, все не так.

 

Рандомайзер установлен на каждую координату и на каждый угол. То есть 6 независимых друг от друга движений.

 

Сейчас думаю как сделать его более реалистичным.

 

По идее получается нужно задать координате или углу такое движение.

Спойлер

1.png

 

Значит нужно менять время и менять силу.

Изменено пользователем Antonshka
Ссылка на комментарий
Поделиться на другие сайты

Примеры на C#:

Принцип связан с условием движения персонажа, временем, углом в радианах, координатами персонажа и некоторыми тригонометрическими функциями. Получается что-то, вроде, двух одновременных движений вперед и относительное влево-вправо по дуге.

Ключевые слова для поиска: "camera bob", "walk camera"...

  • Понравилось 1
Ссылка на комментарий
Поделиться на другие сайты

13 часов назад, MasterGH сказал:

Примеры на C#:

Принцип связан с условием движения персонажа, временем, углом в радианах, координатами персонажа и некоторыми тригонометрическими функциями. Получается что-то, вроде, двух одновременных движений вперед и относительное влево-вправо по дуге.

Ключевые слова для поиска: "camera bob", "walk camera"...

Спасибо, буду разбираться.

 

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.