Top-Down movement redirects momentum after diagonal movement

How do I…

Stop the top-down movement behaviour from redirecting after pressing two inputs for diagonal movement. It looks like the object is redirected

What is the expected result

The object stops along the diagonal movement vector without jerking onto an axis

What is the actual result

After pressing two buttons to move diagonally and removing them simultaneously. The character jarringly gets redirected

Related screenshots

I have a test scene with zero events just an object with the top down behaviour

I cannot find the video upload button so I can only show the behaviour settings

By redirect you mean like
You hold left and up and when you release it object should face left up diagonally while it is facing either left or up?

1 Like

Its hard to explain without video but let me explain it by words:

Beginning:
I am holding two keys e.g.: W and D → the object is moving diagonally up.

Middle:
I am releasing both keys simultaneously → the object sharply turns in just one of the axis it feels and looks like it does so with the exact same force as it was using when moving diagonally.

End:
I am holding no keys and the trajectory looks like a diagonal line going from the bottom left to the top right and then going of on a 45 degree angle after release.

I understand that if i slightly delay taking of my individual fingers that this would be expected but I am doing it quickly so It feels very weird and unintuitive

Here is a link to a video.

1st you would need to be absolutely sure you are releasing both keys at the same time

Remember it is most likely checking 60 times PER SECOND

Would you bet your head on that you release them at the same time like exact frame?
I have huge axe (don’t ask from where) in case you gonna answer yes

Well I am obviously not doing it at the exact time but if you look at the video the delay is quite significant and that I would notice. (Please keep you huge axe whereever it is)

You have deceleration at 800 set it to 8000 and lets see what happens

So it works way better, but basing the direction on movement is still cluncky so I switched to looking at mouse position. Thank you for taking the time

Acceleration is how fast you gain speed
So whatever speed you have now to max speed
So higher the value faster you will reach max speed
Think of it as trying to gain speed on ice
At 1st you go slow and you are gaining momentum

Where deceleration is same scenario on ice but as you would try to lose speed
Lower deceleration it will feel like ice is more slippery

So with low deceleration releasing controls you will take some time before you stop

And same crap apply to rotation in this case

Where again comes issue of releasing both keys at the same time in same exact frame
You could add variable with some delay to keep player diagonally even if you release one key half sec faster than other

But do you really want to dive into it or are you fine with rotate toward mouse?