Это может быть смехотворно очевидно, но математика не была моей сильной стороной в школе. Я достаточно долго бился головой о стену, и наконец решил, что спрошу.
Я пытаюсь оживить спрайт, движущийся по двумерной параболической траектории из точки А в точку Б. Обе точки находятся в одной и той же координате y. Желаемая высота параболы от начальной / конечной y-координаты также дается (или, если вы предпочитаете, желаемую скорость). В настоящее время в моем коде у меня таймер срабатывает с высокой частотой. Я хотел бы рассчитать новое местоположение мяча на основе количества времени, которое прошло. Так что параметрическое уравнение параболы должно хорошо работать.
Я нашел этот ответ от GameDev адекватным, пока мои требования не выросли (хотя я не уверен, что это действительно параболический путь ... Я не могу проследить вывод окончательных уравнений, представленных там) , Теперь я хотел бы сжать / растянуть спрайт в разных точках параболического пути. Но чтобы эффект работал правильно, мне нужно повернуть спрайт так, чтобы его основная ось касалась траектории. Поэтому мне нужно иметь возможность получить угол касательной в любом заданном месте / времени.
Я могу найти все виды уравнений для каждого из этих требований (параметрическая парабола, касательная в точке и т. Д.), Но я просто не могу понять, как объединить их все. Может ли кто-то с большим количеством математических навыков помочь товарищу по программированию и предоставить набор уравнений, которые будут работать? Заранее большое спасибо.