Charios
Docs/Export & integrate/Export to Unity

Export to Unity

Drag the zip into Assets/. The prefab lands posed in T-pose with the Animator playing your active clip on Awake.

Drag the unzipped folder into your Unity Assets/ directory. The prefab arrives posed in T-pose with the Animator playing your active clip on Awake. Sprite order, animation curves, and bone-aware positions all preserved.

What's in the zip

folder<Project>/
├─ Sprites/
│   ├─ <layer>.png + .png.meta              (one per visible layer)
├─ Animations/
│   ├─ <Project>_Idle.anim + .meta          (your active mocap clip, baked at 24 fps)
├─ <Project>.controller + .meta             (AnimatorController, default = Idle)
├─ <Project>.prefab + .meta                 (root + per-layer SpriteRenderer + Animator)
└─ README.txt

Importing

  1. Unzip the export.
  2. Drag the entire folder into your Unity project's Assets/. Unity imports everything and resolves the .meta files.
  3. Drag the <Project>.prefab into a scene. The character appears in T-pose.
  4. Press Play. The Animator plays your active clip on Awake.

Pixels Per Unit = 200

Charios sets PPU = 200 on every sprite, matching the editor's scene scale. A 256-pixel-wide head sprite imports at ~1.28 Unity units, which sits cleanly in a typical Unity scene without manual rescaling. If your project uses a different PPU convention, change PPU in the import settings before instantiating.

Layer order = Sorting Order

Each SpriteRenderer gets m_SortingOrder equal to its position in the layer panel. The 2D draw order from the editor survives import — off-camera arm behind body, sword in front of everything.

Animation

The active clip is sampled at 24 fps over its natural cycle (capped at 3 seconds). Each frame yields a per-layer transform; the deltas from the rest pose become curves on each child SpriteRenderer's m_LocalPosition and m_LocalRotation. m_LoopTime: 1 on the clip and a duplicate of the t = 0 frame at t = duration give a seamless loop.

Adding more animations

Charios exports one clip per Unity export. To add more, re-export with a different active clip — Unity's .anim files are independent assets, and you can drop multiple Charios .anim files into the same prefab's Animator.

Wire them into your AnimatorController:

  1. Open the AnimatorController. The default state is Idle (whichever clip you exported with).
  2. Drag your other Charios .anim files into the Animator window — each becomes a state.
  3. Add transitions between states with parameters (Speed, Grounded, Attack, etc.).
  4. Drive the parameters from your gameplay code.

If the prefab looks wrong

  • Sprites stacked at origin — old Charios export. Re-export; current versions bake bone-aware positions.
  • Sprite order swapped — check Sorting Layer on the SpriteRenderers. Charios writes Sorting Order; if your project uses a custom Sorting Layer, override accordingly.
  • Animation doesn't play — make sure your Animator has the AnimatorController set, and that the clip is in the default state. The README.txt in the export bundle has more.

Was this page helpful?