Skip to content

Choose a tag to compare

@fernandotonon fernandotonon released this 26 Jun 19:47
65bc246

What's new since 3.10.0

ML auto-rigging with UniRig (#408)

Higher-quality skeleton prediction for unrigged meshes, powered by UniRig (SIGGRAPH 2025 — MIT code + MIT weights, trained on Articulation-XL2.0 CC-BY-4.0).

How it works

  • UniRigPredictor — a native C++/ONNX port of the UniRig pipeline:
    • Surface-sample the mesh → Michelangelo shape encoder (encoder.onnx)
    • Greedy autoregressive decode over the skeleton-tree tokenizer → 350M causal decoder (decoder.onnx, manual KV-cache + validity mask)
    • Run the exact UniRig detokenizer FSM (256-bin coords, branch/parent rules) → joints + bone hierarchy, parent-before-child ordered for Ogre
  • Two model files download on first use to AppData/ai_models/unirig/ (encoder.onnx + decoder.onnx). Offline guard: QTMESH_UNIRIG_NO_DOWNLOAD.
  • Default stays Pinocchio (#407) for offline reliability. Choose UniRig when you want ML quality on arbitrary topology / non-humanoid shapes — it falls back to Pinocchio automatically when ONNX is disabled, models are missing, or prediction fails (report.fallbackReason records why).

Where to use it

  • Inspector — Animation Mode → Rigging → Algorithm picker (Pinocchio vs UniRig), with download progress, live decode step counter, and Cancel
  • CLIqtmesh rig model.fbx --algo unirig [--skin] -o rigged.fbx (pinocchio is default; rignet accepted as deprecated alias)
  • MCPauto_rig tool gains an algo parameter (pinocchio | unirig)

Attribution and license details: THIRD_PARTY_AI_MODELS.md. Developers exporting fresh ONNX artifacts: scripts/export-unirig-onnx.py (offline, not shipped).

UV Editor — component selection (#460)

The UV Editor panel now supports vertex / edge / face selection (click + box select, 1/2/3 shortcuts) and highlights the matching Edit Mode island read-only.

UniRig Preview

UI Result
image image