I don’t change the initial vertical speed, but I adjust the horizontal speed:Īs you see jumps in Unreal Engine 4 are highly configurable and likely you won’t need to implement a custom jump system. I want a 1 second jump and which is 120 cm length. I use Add Movement Input to control the horizontal speed, so v x will match max speed UE4 variable. Where v x – horizontal speed and x h – distance to the jump peak. In the video there were again two formulas: Let’s say, I still need a 1 sec jump because it matches my jump animation. In such requirements, according to the first formula I either choose a time to reach the maximum height or a target height. Now, for my game I want gravity to be the same as on Earth, i.e. The vertical speed, on the other hand, should be: Or in terms of UE4, the gravity scale should be 0.8163. Say you want a jump 100 cm height which takes 1 sec to complete. Height and time depend on these variables. Note here, that only gravity and initial vertical speed can be configured in UE4 with the use of the following variables: gravity scale and jump Z velocity. The tooltip for Add Movement Input says that Character automatically handles the input and moves and I figure that's why. Where v 0 is an initial vertical speed, h – jump height, t h – time to reach the height, g – gravity Override Character movement I'm using the first person example map and trying to override the movement of the character by using Consume Input Vector or Consume Movement Input Vector but both are returning a vector of 0,0,0. In the video above there were two important formulas which describe speed and gravity dependency on height and time: