Unreal Engine 5 FBX Import — Y and Z Axes Swapped, Y Reversed, Rotation Not Imported¶
Summary¶
Importing a camera move FBX exported from Unreal Engine 5 into Flair shows three problems: (1) Y and Z axes are swapped; (2) the Y axis direction is reversed; (3) rotation data is not imported — it always shows the same value. The confirmed workaround is to create an empty actor ("FlairAnchor") in UE5, parent the Flair camera to it, and rotate the anchor 90° on the appropriate axis. This corrects the coordinate transform without modifying the move data.
Symptoms¶
- Camera move exported from UE5 as FBX and imported into Flair shows incorrect axis orientation
- Y and Z values appear swapped relative to real-world space
- Y+ and Y- directions are reversed
- Rotation data (pan/tilt/roll) is not importing — always shows the same value regardless of camera orientation in UE5
- Issue occurs regardless of FBX export settings tried in UE5
Root Cause¶
Unreal Engine uses a left-handed, Z-up coordinate system. Flair uses a different convention. The Y/Z swap is a fundamental coordinate system mismatch between UE and Flair. The rotation issue may be related to how UE5 encodes camera rotations in FBX versus how Flair reads them.
Fix¶
[CONFIRMED] Create FlairAnchor actor in UE5¶
2023-03-16 — joel.spezeski
- In Unreal Engine 5, create an empty Actor (Blueprint Actor or Empty Actor)
- Name it FlairAnchor (or similar descriptive name)
- Parent the Flair camera from the FBX import to this FlairAnchor actor
- Rotate the FlairAnchor 90° on the appropriate axis (typically X or Y — experiment to find which one corrects the orientation for your setup; joel.spezeski notes he can never remember which without testing)
- After rotating the anchor, the camera move should play back correctly in UE5's sequencer and the spatial orientation should match Flair's output
- This method also makes it easy to offset the entire move relative to the UE level — just move/rotate the FlairAnchor
[ALTERNATIVE] Apply the 90° rotation in the Flair Import Window¶
Instead of fixing it in UE5: 1. In Flair, open the Import FBX dialog 2. Apply a 90° rotation transform to the Flair Z-axis in the import window (easier than creating the anchor in UE5, but less flexible for ongoing level positioning)
Rotation Data Issue¶
For the rotation data not importing: this is a known UE5/Flair FBX compatibility limitation. Satoshi Hattori (2023): "rotation information could not be imported. It always shows the same value." — no confirmed workaround was found in this thread. Check the UE5 FBX export settings and ensure camera animation is baked before export.
confidence_score: 0.82
WhatsApp Excerpts¶
[16/3/2023, 7:55:57 pm] ~ Satoshi Hattori: I am having trouble importing camera motion from Unreal Engine 5 to Flair. I exported the motion from ue5 with fbx and imported it with Flair7. 1. y and z are opposite. 2. y +- is opposite. Where and how can I convert these values?
[16/3/2023, 8:26:43 pm] ~ Satoshi Hattori: Also, rotation information could not be imported. It always shows the same value.
[16/3/2023, 9:48:39 pm] ~ joel.spezeski: I've had it that y and z get swapped on UE import no matter what settings I try in Flair export or even modifying the move in Maya. As a work around I create an empty actor and call it FlairAnchor or something descriptive. Then I parent the Flair camera from the fbx import to the Flair anchor actor. Finally, I rotate the Flair anchor 90° on the appropriate axis (It's been a while and I can never seem to remember which one it is). After that the camera moves as expected when playing back from the sequencer. This method also makes it easy to adjust the move relative to the level.
Related Issues¶
- See also: C4D FBX Camera Import — 90° Rotation Required
- See also: FBX Export to Unreal
- See also: FreeD to Unreal — Setup
- See also: FBX Paid Add-On License