Help with Zero-g FPS

So I’m making an FPS with some zero-g zones in which the player character can move with 6 degrees of freedom (move in any direction and rotate in any axis) but I’m having some issues with the player’s rotation.

  • When upside down the player’s yaw rotation is inverted some times

  • The yaw rotation seems to follow the world up instead of the character’s relative up vector.

My implementation is partially inspired by Lyra’s character architecture. But I’ve added a custom Zero Gravity movement mode and logic to allow for the character to rotate pitch wise 360 degrees.

Does anyone know how can I solve the Yaw rotation?

Have you tried using quaternions for the look rotation instead of relying on FRotator? With full 360° pitch and roll, Euler rotations can produce axis-flipping and gimbal-lock issues. I’d keep the rotation state quaternion-based.