I’m currently working on a true first person setup but run into some problems.
I want, when the player stands still and moves his mouse, that the feet does not move, only his upper body.
This could be achieved easily with an aim offset and the option Use Controll Rotaion Yaw deactivated.
The camera (and therefore the head) is pointing at the controller direction (Control Rotation) through the aim offset and the entire actor is pointing at the feet direction (so when moving forward in the direction of movement and when moving backwards in the opposite direction of movement).
I’m also not using a blendspace for moving, because there is only one animation for moving sideways in each direction so when moving at the front left (W + A key) or to the back right (S + D key) it would blend a forward with a backwards moving animation which looks awfull. So I only use one forward moving and one backwards moving animation.
Here is my main problem at the moment:
When you move 90° degrees in one direction (A or D ke) and then move in the opposite direction, the character needs to turn 180°. When doing so with the functions RInterp To (Speed 7.5) and SetActorRotation the head is snapping for shortly (= moving very fast back and forth for a short time).
- Why is this happening and how to avoid it? When turning, the actor is rotated and at the same time the aim offset is applied, too, to keep the head pointing at the right direction.
- Is this setup optimal at all or is there a better solution for a true first person setup? To use an aim offset for yaw I need to uncheck Use Controll Rotaion Yaw or otherwise I would need to counter rotate the mesh (or animation) when standing still.
- In which direction should the actor point? Direction of movement or control rotation?
- When making a 180° turn, how can I specify in which direction I want to turn?