День добрый форумчане! Собственно вопрос в следующем, много видел карт, где реализованны кастомные скрипты вроде прыжка/полета снаряда по параболе, собственно все они реализованы не через векторы, а через события с малым периодом времени и везде в этих скриптах ничего не понятно. Вопрос: можно пожалуйста написать эту самую формулу и метод её реализации с пояснениями, вроде читал статьи и прочее, но все-равно не до конца понимаю, можно ссылку на гайд для тупых? Просто начал изучать джасс недавно и тут столкнулся с таким подводным камнем.

Принятый ответ

они реализованы не через векторы, а через события с малым периодом времени
Для начала определись с терминами, у тебя получается, что периодическое событие заменяет векторы. Любое движение, это переодическое событие, векторы только удобный способ их записи.
ссылку на гайд для тупых
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
17
8 лет назад
0
они реализованы не через векторы, а через события с малым периодом времени
Для начала определись с терминами, у тебя получается, что периодическое событие заменяет векторы. Любое движение, это переодическое событие, векторы только удобный способ их записи.
ссылку на гайд для тупых
Принятый ответ
0
6
8 лет назад
Отредактирован BaHeK
0
Каждый короткий промежуток времени изменяешь высоту согласно формулы параболы и смещаешь юнита в сторону куда он смотрит.
0
2
8 лет назад
0
BaHeK, Но тут такая канитель, что высота меняется в зависимости от подножного ландшафта, то есть если он летит в гору - то и его высота приплюсовывается к высоте горы и летит он мягко говоря не по параболе.
GetLocalPlayer:
Спасибо за ссыль, сейчас буду разбираться.
0
6
8 лет назад
0
Vanilla_sergal, если высота изменилась оп сравнению с начальной, то просто изменяем высоту на разницу с начальной.
0
2
8 лет назад
0
BaHeK, Все понял, раньше менял высоту относительно ландшафта, туплю, извиняй. Можете закрывать вопрос.
0
19
8 лет назад
Отредактирован Raised
0
Берешь дистанцию между начальной и финальной точкой прыжка, делишь её на скорость(количество пройденного расстояния за один тик таймера) и получаешь необходимое количество таймера. После чего, делаешь то же самое с пиковой высотой, но делишь на время, и получаешь реальную высоты, на которую должен смещаться юнит.
Всё намного проще, если прыжок имеет фиксированную дальность.
Тогда в качестве высоты может выступать переменная, уменьшающаяся с движением, из положительного значения, переходящая в отрицательное - идеальная дуга. Но это и в первом варианте достижимо, если танцевать с бубнами арифметики.
1 пункт от GF RaiseD: 1.1 (ненормативная лексика)
Чтобы оставить комментарий, пожалуйста, войдите на сайт.