New: 12 free tools for Unreal Engine and Unity developers.Try them →

Unity ↔ Unreal Converter

Convert positions, rotations and scale between Unity (meters, Y-up) and Unreal (centimeters, Z-up).

  • ✓ Free, no sign-up
  • ✓ Works for Unreal Engine & Unity
  • ✓ Runs in your browser

Unity transform

Position
Rotation (x, y, z)
Scale

Unreal transform

Code

Batch convert positions

Paste one x, y, z per line (commas, spaces or tabs). Uses the direction and scale above.

How to use the converter

  1. Choose the direction: Unity → Unreal or Unreal → Unity.
  2. Enter position, rotation and scale exactly as they appear in the source engine.
  3. Read the converted transform, or copy the generated code.
  4. For many points (spawn locations, waypoints), paste them into the batch box: one x, y, z per line.

Coordinate systems at a glance

UnityUnreal Engine
HandednessLeft-handedLeft-handed
Up axis+Y+Z
Forward axis+Z+X
Right axis+X+Y
Unit1 meter1 centimeter
Rotation orderZ, X, Y (roll, pitch, yaw applied in local space)Roll, Pitch, Yaw (same order)

The formulas

  • Position: Unreal (X, Y, Z) = (Unity z, Unity x, Unity y) × 100
  • Rotation: Pitch = −Unity x, Yaw = Unity y, Roll = −Unity z
  • Scale: Unreal (X, Y, Z) = (Unity z, Unity x, Unity y)

We verified the rotation formula numerically: converting the forward, right and up vectors of thousands of random rotations gives identical results in both engines.

Watch out for

  • The Details panel order: Unreal shows rotation as X = Roll, Y = Pitch, Z = Yaw, but FRotator takes (Pitch, Yaw, Roll).
  • Custom unit scales: if your Unity project treats 1 unit as something other than 1 meter, change the scale box at the top.
  • Meshes: moving models with FBX? The importers already convert axes; you only need these formulas for numbers like positions and rotations.

Full explanation with examples: Unity vs Unreal Coordinate Systems.

FAQ

How do Unity and Unreal coordinates differ?

Both are left-handed, but Unity is Y-up with Z forward and uses meters, while Unreal is Z-up with X forward and uses centimeters. So Unreal X = Unity Z × 100, Unreal Y = Unity X × 100 and Unreal Z = Unity Y × 100.

How do I convert rotations?

Unity Euler angles (x, y, z) become Unreal Pitch = −x, Yaw = y, Roll = −z. Both engines apply yaw, then pitch, then roll, so the conversion is exact.

Why does Unreal show rotation as X, Y, Z?

In the Details panel Unreal labels rotation as X = Roll, Y = Pitch and Z = Yaw. In C++ the FRotator constructor takes (Pitch, Yaw, Roll). This tool shows both.

More free tools