Docs / Reference / Glossary & units
Glossary & units
The terms this documentation uses, plus the unit and axis conventions behind them.
| Term | Meaning |
|---|---|
| MMCP | The Motion MCP protocol the plugin speaks to the server. The plugin is a client; the server generates. |
| Canonical skeleton | The joint layout a model is trained on, published by the server per model — 30 joints for kimodo-soma-rp, 27 for ardy-core-rp. A request on exactly that layout gets the server's fast path; every other rig, including soma77, is retargeted server-side. |
soma77 | The built-in 77-joint rig, rooted at Hips, that Create Skeleton builds whenever the model's canonical joints all live inside it. It carries the fingers, eyes and jaw the models do not predict. |
| Retarget hop | The server's step that maps generated motion onto a rig that is not the model's canonical skeleton. Decided by the server from the joint list it receives; the plugin does no retargeting of its own. |
| Compact / Full | The two layouts of the tool column (and, on its own switch, of the Settings window). Compact folds the knobs and keeps the workflow; nothing folded is reset. |
| Adopt | Make a rig you already have pipeline-ready — store its current pose as the bind pose, plus hip height and name prefix — without marking it canonical. |
| Prefix | The animatica: in front of every joint the plugin builds (animatica:Hips). Bookkeeping the plugin uses to find and delete its rig, not a field: 3ds Max has no namespaces, so you are never asked to name one. A rig of your own keeps the prefix its joints carry. |
| Constraint / pin | One authored requirement at one frame: a pose shape, an effector position, or a path waypoint. Pins appear on the timeline; markers appear in the viewport. |
| Path (root2d) | A sequence of ground waypoints saying where the character should be, and when. |
| Diffusion steps | How much effort the model spends. More steps is better and slower; the server caps them at 500. |
| Replace | 3ds Max holds one animation, so a generation replaces it. This is the only output mode here, which is why no mode picker is shown. |
#Units & axes
The protocol boundary is fixed at meters, right-handed Y-up. 3ds Max is Z-up, and its scene unit can be anything — both are converted for you in a single module, so nothing you do in the scene has to be expressed in the protocol's terms.
| Boundary | Convention |
|---|---|
| The wire | Meters, right-handed, Y-up |
| Your scene | Z-up, in whatever system unit the scene is set to |
| Both | Right-handed, so nothing mirrors on the way through |
Up on the wire, (0, 1, 0), lands on Max's +Z; the protocol's forward
basis, (0, 0, 1), lands on −Y, which is Max's conventional character
facing.
#The scene unit is read, not assumed
The scale is asked of the scene at runtime rather than hardcoded, because Max's default system unit is inches: one meter measures 39.370079 system units in a default scene. Reading the system unit type alone would not be enough either, since the system scale multiplies it — so the plugin asks the scene to decode one meter and uses the number it gets back.
That answer is cached and dropped again whenever the scene's units change. Changing the system unit mid-session does not rescale geometry that already exists, so the new scale applies to what is written after the change. It is not a migration of what is already in the scene.
#Frame rate
Motion is generated at the model's native 30 fps. Turn on Match scene FPS in Settings to have it keyed at your scene's rate instead.