Войти
Unreal EngineФорумОбщее

Персонаж двигается слишком быстро после упаковки проекта

#0
20:15, 3 мар 2022

Упаковал проект, но при запуске обнаружил, что персонаж двигается намного быстрее, чем двигался при игре в редакторе.
Персонаж павн, передвижение выполнено следующим образом:

+ Показать

В чем может быть проблема?

#1
20:47, 3 мар 2022

У тебя скорость зависит от частоты сигналов о нажатии. Чем больше FPS - тем быстрее двигается актер.
Надо движение делать не заменой координаты, а выставлением скорости/ускорения.

#2
21:11, 3 мар 2022

PANDA
Можешь пожалуйста подсказать ноду, позволяющую создать ускорение?

#3
12:02, 4 мар 2022

Используй delta time.

#4
(Правка: 17:21) 17:19, 4 мар 2022

Ноды Add Impulse и Add Torque, ещё можно использовать компоненту thruster, я на базе этой компоненты сделал мувмент, но там надо постоянно управлять thrust strength, потому что он постоянно толкает павн.

#5
23:06, 4 мар 2022

TommYMoonlight
Зависит от игры. Тебе надо добавить movement компоненту твоему pawn-у. Они есть разные.
https://docs.unrealengine.com/4.27/en-US/API/Runtime/Engine/GameF… entComponent/

#6
0:18, 5 мар 2022

а можно просто GetWorldDeltaSeconds * AxisValue * 20

#7
1:05, 5 мар 2022

Oleg Linkov
arte_de_mort
Delta seconds же зависят от FPS и с таким типом передвижения также будет встречаться такой баг.

#8
9:24, 5 мар 2022

Смысл дельты как раз в том, чтобы не зависеть от фпс.

#9
9:52, 5 мар 2022

TommYMoonlight
смотри, допустим у тебя дельта 0,016s, тогда смещение за 1 кадр будет 0,32 = (0,016 * 1 * 20) где 20 это твоя скорость в секунду.
теперь допустим что у тебя вдвое меньше кадров в секунду и 1 кадр требует 0,032s, тогда смещение будет 0,64 = (0,016 * 1 *20). т.е. твой pawn сдвинется на такое же расстояние как в более быстром варианте за 2 кадра. Разумеется скорость в 20 в такой схеме выглядит очень маленькой ее придется увеличить.

Unreal EngineФорумОбщее