Problem with "Orient Rotation to Movement" In blueprints

I was having problems using the toggle for Orient Rotation to Movement. What I was hoping would happen was I could get the character to look whatever way he’s moving but with the camera that’s a component in that character blueprint to stay fixed to the way he spawns. Kind of like how they do it in the twin stick demo that comes with UE4.

What actually happened was the camera just moved a few degrees and tilted every time you changed direction. I wasn’t having any luck with the toggle so I rebuilt the function in blueprints.(Pictured below) It does what it’s supposed to do but the camera moves with it and cause it snaps it’s so disorienting, I just want the camera to face one way the whole time and not move. besides following the character. Can anyone help me?

SetActorRotation actually just rotates the actor’s root component, to which your camera is probably attached and that’s why it also rotates.

If you can get away with it you might try rotating the character’s mesh component instead of the entire actor. Otherwise you could try unrotating the camera (or spring arm) by the same angle that you rotate the character.

Cheers for the help. I changed it to set world rotation with the target of the characters mesh and it’s working, but now it rotates so the left side of the character is facing in the direction it’s moving and not the from of the character like before. In the viewport of the blueprint for my character it’s facing the right way with the front of the character in the direction of the arrow. I can’t figure out why it’s doing this.

In your character blueprint check to see if the mesh has its relative rotation set to something other than zero. If so you’ll need to add that amount of rotation to the result of RInterpTo when you rotate in the tick function.

Sorry only just got back in from work,

The rotation on my mesh says -90.000061 on the X axis and 0.000084 in the Y. How would I add this to the result? I don’t know how to add to a Rotator.

You can use the CombineRotators node to add them. Hook the output from RInterpTo to the A input and for the B input you can just punch in -90.0 for the Z component.

Cheers mate, That worked perfectly, thanks so much!

Awesome, glad to help