Download

GetVelocity/GetPhysicsLinearVelocity * deltatime unequal to distance travelled

Hi all,
I have a Pawn that was pushed by a constant Force in Tick. With damping, it will move at a constant velocity. For simplicity, mine is moving in X-axis.
GetVelocity() and GetPhysicsLinearVelocity() returns the same value which is the first value in the log (in the picture case, I am showing the GetVelocity() value).
The second value is the accumulated delta time while the third value is the UGameplayStatics::GetRealTimeSeconds(GetWorld()). Pretty much the same thing, ie the elapsed time since opening the game.
Finally, the fourth value is the world X position of the Pawn, which started at 0.
Capture1
However, as you can see, the distance travelled is roughly half of the speed * elapsed time.
Any idea what is affecting this discrepancy?

If you want to move an object at a constant speed, you should control its velocity directly. I could be wrong on this, but forces take the objects weight/damping into consideration as well.