How to prevent frame rate from effecting AddMovementInput?

How to prevent frame rate from effecting AddMovementInput?
Pawns move at higher speeds at lower FPS, and lower speeds at higher FPS.
Multiplying the player’s inputted AxisValue does not stabilize it.

Any ideas will be highly appreciated!

Are you multiplying it by world delta seconds?

No, I am not. The strange thing is when I created a new clean 3rd Person project, the 3rd Person also uses AddMovementInput without multiplying to delta seconds. And, the character is unaffected by frame (tested 10fps~120fps). :s

Yeah, I know; I would like to know what’s happening there, too. Normally you multiply by delta seconds to make if framerate independent.

I wonder if there’re something special about Character which is a Pawn but with extra bits. Pretty sure the answer is in those bits. Perhaps in the way the movement input accumulates during a frame… :expressionless:

Not sure.

That’s up to you. Glad to hear you found the culprit!

I investigated further, and it seems that to clamp velocity I was doing a CharacterMovement.SetVelocity() in another location. When I removed that node, the characters/pawns returned to working properly!
Should I remove this question altogether because it is incorrect?

Thank you for your help! :smiley:
It was so frustrating not knowing where to look!

I think I will leave it just for future reference.

I investigated further, and it seems that to clamp velocity I was doing a CharacterMovement.SetVelocity() in another location. When I removed that node, the characters/pawns returned to working properly!