Воскресенье, 22 Декабря 2024, 16:08

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Танк.Плавный поворот башни на указатель.
VAsKAДата: Вторник, 20 Октября 2015, 22:12 | Сообщение # 1
частый гость
Сейчас нет на сайте
Всем привет.Никак не могу разобраться с проблемой поворота башни танка на указатель.
Мне нужно ,чтобы башня поворачивалась на указатель(метку) медленно и плавно.С помощью ПКМ создаётся указатель(захват цели), башня должна поворачиваться и смотреть в его сторону,медленно и плавно( а не сразу менять направление)
Как это сделать?(МЕДЛЕННЫЙ ПЛАВНЫЙ ПОВОРОТ)
Если резкий поворот.
Код
image_angle=point_direction(x,y,объект.x,объект.y) // Просто поворот
YellowAfterlifeДата: Среда, 21 Октября 2015, 14:59 | Сообщение # 2
Сейчас нет на сайте
Я делал небольшую запись с иллюстрациями по поводу плавных поворотов.
Можешь разобрать или просто взять оттуда функции cycle и angle_rotate.


Quad69Дата: Среда, 21 Октября 2015, 21:14 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Цитата VAsKA ()
Как это сделать?(МЕДЛЕННЫЙ ПЛАВНЫЙ ПОВОРОТ)

Вот скрипт, сам им пользуюсь.
Код
/*
Скрипт плавно изменяет направление башни до требуемого
Возвращает полученное направление
argument0 - текущее направление
argument1 - требуемое направление
argument2 - скорость изменения направления
Автор скрипта DreamRunner 09.09.2006
*/

argument0 = argument0 mod 360; // Ограничиваем направление - от -360 до 360 (не включительно).
if argument0 <0 argument0 += 360; // Если направление меньше 360 - преобразовываем значение в положительное
if abs(argument0-argument1)<argument2 // Если разница между направлениями меньше скорости поворота, то...
    return argument1; // Возвращаем требуемое направление
return argument0 + (sign(sin(degtorad(argument1-argument0)))*argument2);

Вот пример использования:
Код
image_angle = название_скрипта(image_angle,point_direction(...),скорость)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг