Есть ли способ заставить объект двигаться между двумя точками линейно? - PullRequest
0 голосов
/ 08 января 2019

Я делаю 2D-шутер, у меня настроен целевой объект, и я пытаюсь заставить его перемещаться из точки А в точку Б с постоянной скоростью.

Я пытался использовать временную шкалу, установленную для переключения между значением от 1 до -1 в течение 4 секунд, чтобы управлять альфа-версией узла Lerp, но это вызывает эффект замедления.

enter image description here

Я хочу иметь возможность установить два вектора для перемещения объекта с постоянной скоростью. Сейчас я не знаю ни одного другого узла, который может переключаться между значениями во времени.

Ответы [ 2 ]

0 голосов
/ 20 января 2019

Make these two thingies please, add an actor and all that fun stuff, and you will place two checkpoints in the level.

BluePrintOverview in the moving actor

Хорошо, во-первых, избегайте событий, таких как чума, это добавляет в игру довольно много дополнительной обработки, но для этого мы собираемся создать два объекта Checkpoint и использовать его для получения всех актеров из класса , вы можете настроить другие логики для этого с помощью циклов, но сейчас мы будем делать это простым. И в движущемся объекте мы собираемся сделать « Получить всех актеров класса », и так как это всего два актера, мы собираемся использовать ForEachLoop , чтобы установить для каждого из них значение переменная (просто добавьте переменную из синей штуки в вашем цикле) Мы используем последовательность и переход, таким образом он будет проверять каждый тик цикла foreach, чтобы убедиться, что контрольная точка 1 (индекс массива 0) установлена ​​на правильный индекс в массиве, а контрольная точка 2 (индекс 1 массива) устанавливается в правый индекс массива, после его завершения он запускает завершенные и запускает события перемещения объекта.

Here is your setcheckpoint logic, we are going to store the checkpoint object itself as a variable and use that to **get location** off of

The move to macro logic

Теперь отсюда мы собираемся сделать так, чтобы объект переместился в контрольную точку, и как только он там окажется, он выполнит завершенное и вызовет пользовательское событие , чтобы перейти к следующему. контрольно-пропускной пункт. Когда вы сделаете это, убедитесь, что вы также добавляете один из этих вызовов события на линию начала игры.

0 голосов
/ 12 января 2019

Откройте временную шкалу и установите кривую линейной, выберите все точки кривой, щелкните правой кнопкой мыши и затем выберите линейную, это решит вашу проблему. А затем используйте обратный вывод, чтобы воспроизвести его назад, чтобы вернуться назад и заставить.

...