In Blender¶
Blender is the one host where OTS doesn't use its own window. Everything lives in a sidebar panel that follows Blender's conventions — property rows, UI lists, operator buttons — because a floating Qt dialog in Blender would feel like a visitor.
The features are the same. The layout is Blender's.
Finding the panel¶
Open the 3D-view sidebar with N and select the OTS tab.
The same four jobs as the Harmony and Maya window, expressed as collapsible sections inside one panel:
A loaded .pvt, ready to rebuild. Create Bake Bones from .pvt builds one armature per rig tag.
Scene selection at the top, the tickable bone list, then Export Settings with Scale Factor and Pivot Space.
2/2 matched | Frames 1–60 | 1 cam | 2 rigs, then the match list with checkmark and camera icons, and the three action buttons.
The scan list with Select All / Deselect All, then the Range box with Scene Range.
The three panels¶
Scene selection¶
Always at the top, always showing what OTS currently sees selected: each selected armature, and each selected camera with an icon showing whether it's the scene's active one.
If nothing usable is selected it says so — "Select an armature in the viewport". If more than one armature is selected, it reminds you that each one exports as its own rig.
This panel is the answer to "why is my export list empty?" — it tells you what Blender thinks you've picked before you press anything.
Pivot Files (.pvt) · Animation Files (.anm)¶
One collapsible panel per format, each containing an Import box and an Export box. Same two-formats-by-two-directions grid as the Harmony and Maya window, expressed as nested boxes.
Exporting¶
Scan selection fills the list from what's selected, and the counter next to it shows how many rows are ticked out of the total. Select All and Deselect All do what they say.
Unlike the Harmony and Maya export lists, Blender's list has checkboxes — that's Blender's own idiom for a UI list, and it means you can scan a whole armature and then untick the bones you don't want.
| Format | Extra settings |
|---|---|
.pvt |
Scale Factor, and Pivot Space — Local (relative to parent) or Armature Space |
.anm |
Start / End, and a Scene Range button |
Then Export Pivots (.pvt) or Export Animation (.anm).
Pivot Space¶
| Option | Meaning |
|---|---|
| Local (relative to parent) | Each bone's position relative to its parent bone. The default |
| Armature Space | Absolute position in armature space |
Harmony and Maya always write local. Unless you have a reason, leave Blender on Local so a .pvt means the same thing regardless of who wrote it.
Importing¶
Pick a file with the folder button, or paste a path and press refresh. The info line reports what was found — how many items, how many matched, how many cameras, the frame range, how many rigs.
The match list uses icons rather than colours, because that's how Blender signals status:
| Icon | Means |
|---|---|
| ✔ checkmark | Matched to a bone in the scene |
| ⚠ warning triangle | Unmatched — the equivalent of an amber row in the Harmony/Maya window |
| camera | This item is a camera; filled if it's the scene's active one |
| Q | The target bone is in quaternion rotation mode |
Then:
- Apply Animation to Bones — writes onto matched bones in the selected armatures. The label above tells you how many armatures it will apply to.
- Create Bake Bones — builds the skeleton from the file and applies the animation.
- Create Cameras — builds the cameras.
For .pvt, the equivalents are Create Bake Bones from .pvt and Create Cameras.
What Create Bake Bones builds¶
One armature per rig tag in the file. A single-rig file keeps the file's base name.
Every bone is created with an identity rest at the origin, pointing +Y, with a fixed short length. That's deliberate: with an identity rest, a pose bone's local transform is exactly the parent-relative transform the file describes, so the animation applies without a correction layer sitting between the file and the pose.
It also means the rest skeleton doesn't look like your character. The bones are uniform stubs; the shape you recognise appears when the animation is applied. That's expected — these are bake bones, not a rig you'd hand to an animator to pose by hand.
Bones are set to XYZ Euler rotation mode and keyed on location, rotation, and scale into a new action.
No Rig column¶
Blender's export has no Rig column, and that's on purpose: in Blender the armature is the rig. Each selected armature exports as its own rig, named after itself.
There's nothing left for a column to decide, because Blender already made you decide it when you parented the bone — an armature is a real object with its own datablock, and a bone cannot exist outside exactly one of them. Offering to retag a bone into another rig would promise something the export couldn't honour: a bone whose parent lives in a different armature has no parent.
Maya and Harmony do get the column, because there a "rig" is a convention (a group) rather than a container. Same model, expressed in each application's own terms — see Rigs & Multi-Rig.
On import, Blender honours rig tags fully — a file carrying three rigs produces three armatures.
Coordinates¶
Blender is the Z-up case, and it's the reason OTS converts rotations the careful way.
Positions swizzle from Blender's Z-up to the canonical Y-up. Rotations do not — you can't just permute Euler angles for a basis change; that rotates about the wrong axes and produces a rotation that turns, but turns wrong. OTS converts through a quaternion conjugation instead. See Coordinate Systems.
Cameras get a +90° X tilt on import, because a Blender camera looks down −Z in a Z-up world. The tilt is removed again on export, so a forward-looking camera round-trips cleanly.
Notes and limits¶
Blender's .anm reader assumes a canonical file. Every writer currently emits canonical .anm, so this is always true in practice — but unlike the .pvt reader, it doesn't consult the file's header. It's worth knowing if you ever hand-edit a file.
The add-on requires Blender 4.2 or later, and installs as an extension.
One armature, one rig, one file section. If you want two characters in one file, select both armatures before scanning.
See also¶
- Rigs & Multi-Rig — why Blender's model is the same model
- Coordinate Systems — the Z-up conversion in full
- Cameras — sensor fit, aim, and clip planes