Changelog¶
v1.0.0 — Public release¶
The first public release of Octo Transform Sync — rig, animation, and camera transfer between Toon Boom Harmony, Blender, and Autodesk Maya.
Highlights¶
- All six routes — Harmony ↔ Blender, Harmony ↔ Maya, and Blender ↔ Maya, in both file formats. No per-route code: every file declares its own coordinate space and every reader converts through one canonical space.
- Two formats, one job each —
.pvtcarries the rest skeleton for setup and recovery;.anmcarries the animation plus a folded-in rest pose and the cameras, so a single.anmrebuilds the whole rig and the shot. - Create Rig from a
.anmalone — joints, bones, or a full Harmony peg group with composite wiring, built from the file's rest data and animated in one undo step. - Multi-rig — an editable Rig column splits a scene into separate rigs: one armature in Blender, one group in Maya, one node group in Harmony. Connectivity is locked, so a connected chain can never be split.
- Multi-camera — every camera in the scene, with vertical FOV, near/far clip, offset, roll, and the default-camera flag, rebuilt attached to the peg that animates it. Camera-only pegs bake straight onto the camera instead of creating an empty joint.
- Tangents preserved — absolute per-axis bezier handles, plus
LINEARandCONSTANT. Harmony's native handles are read where the column allows and reconstructed by curve sampling where it doesn't. - Correct rotation conversion — Z-up ↔ Y-up changes are applied as a quaternion conjugation, not as a permutation of Euler angles. Rotation also travels as an order-independent quaternion from the world-matrix bake.
- Partial exports work — each item's parent resolves to its nearest exported ancestor, so half a rig still arrives as a coherent chain.
- Readable, diffable files — indented UTF-8 JSON you can inspect, diff, and script against.
- 30-day trial + perpetual licence — one machine-bound activation covers Harmony, Blender, and Maya, via Creem.
Architecture¶
- One shared, application-neutral engine (
ots_core) holding the schema, coordinate and unit conversion, tangent maths, rig grouping, and licensing — with thin per-host adapters for Harmony, Blender, and Maya. - Harmony and Maya share a single Qt window driven by a duck-typed backend contract; Blender uses a native
bpysidebar panel. - Interchange format v4, with strict version matching and no backward migration.
Known issues¶
- Z-up Maya scenes convert keyframe values correctly but emit interpolation-only handles; per-key bezier tangents are simplified. Work in Y-up for exact tangent shapes.
- Applying a
.anmto an existing Harmony peg unlinks its 3D-path and quaternion-path columns and writes separate-channel bezier curves. Values are correct; the original authoring mode is not preserved. - Amber (unmatched) rows don't clear after Create Rig or Create Cameras — re-browse the file to re-run the match.
- Cross-application camera aim is best-effort. Verify framing after import.
- The Harmony readers don't run the same strict format validation as the Maya and Blender readers, so a wrong-version file surfaces differently there.
Pre-release history¶
Octo Transform Sync was developed privately through 2026. Public history begins with v1.0.0.