Turn-in-Place True FPS turn animation snapping

Hi, I’m trying to implement a turn in place logic for my fps character.

The issue I am facing is, when character turns the animation happens but when animation happens the actor is not really rotated. So the turn animations trigger again.

I tried to fix that by setting actor rotation to be the yaw difference between control rotation and actor rotation just before the animation started. I cache that difference and then use it when the anim notify at the end of the animation executes. This creates a snapping for only a frame or so. I couldn’t find a work around for that problem.

I managed to get that frame’s pose it looks like this.

Normally it looks like besides that frame. It should look like this.

I don’t understand the problem. Do you know why that happens? If you know better approaches I am open to that as well.

I added a state for turning and I play turn sequences there in my locomotion state machine. After that I rotate spines based on pitch and yaw rotations in the AnimGraph. That’s also why the upper body should be fixed with only the legs moving.

Using the main idea behind this approach solved it for me. It basically counter rotates the body to keep feet planted. It’s implemented in Lyra as well.