Hi.
I using pure C++.
Standard pawn class with skeletal mesh. Nothing else.
What am i doing? I am moving my character to my own direction, as you can see on screenshots above. I can do it:
// FVector MovementVector, for example (10, 0, 0)
// inside tick function
SetActorLocation(GetActorLocation() + MovementVector * DeltaTime);
// also inside input functions or anywhere else
SkeletalMeshComponent->AddForce(Force, BoneName, bAccelChange);
// or
SkeletalMeshComponent->AddImpulse(Force, BoneName, bVelChange);
thats all what i doing and have incorrect character position while moving like on screenshots above.
as i can calculate expected result:
if we have velocity change per second (-2034948, 2624202, -22203)
if we have position (529088, 2054358, -46758)
movement result might be at least (x < 529088, y > 2054358, z < -46758)
in fact there is (x < (correct, but maybe not), y < (more less, more more less. incorrect), z > (more greater, incorrect)).
while i in-game, i see it like other objects teleporting to another position, but in fact they are not - just my character teleports