jeremy 23fc4b378e docs(characters): brows went back to painted on 2026-08-12
Merging origin/main in ariki-game surfaced a product decision newer than this doc:
Ozan removed the mesh brows, lash cards and browless-face swap from the product path.
Brows are painted on the body texture again and keep their baked colour, so "brows
follow the hair swatch" and the generated-surface lane are both parked.

The tooling and the brow wiki page still describe the 3D lane, so the note now says to
read the code before the docs there.

Two consequences outlive the revert and are kept: painted brows are still atlas-bound,
so the v02 re-atlas has to carry the pigment (an albedo-fidelity job now, not three
artifacts to regenerate); and character_brow.gdshader is still the only mechanism that
could recolour a brow on a scanned face, since raised scan geometry cannot be erased
with a texture.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-12 17:47:00 -07:00

animation

Jeremy's animation-pipeline hub AND the Mac↔PC bridge for converting files and implementing animations. iClone 8 + Video Mocap live on the PC; Blender 5, the retarget tools, and the ariki-game repo live on both. This repo carries the skills, tools, and the files in flight between machines.

Bridge workflow (Mac↔PC)

  1. PC: export FBX from iClone (Blender preset, Range=All, Preserve Bone Names ON) → drop into exchange/incoming-fbx/ → commit + tinqs push.

  2. Either machine: tinqs pull, run the retargeter →

    blender --background --python tools/cc_retarget.py -- \
      --src exchange/incoming-fbx/<take>.fbx \
      --out exchange/converted-glb/<pack>.glb --name <ClipName> \
      --target <path-to-ariki Superhero_Male_FullBody.gltf>
    

    → commit the GLB + tinqs push.

  3. Implementing machine: copy the GLB into ariki-game assets/quaternius/dancegen/ (auto-discovered by ClipCatalog as <pack>/<ClipName>), add a dance JSON, verify in the dance test bed.

  4. Optional: reference footage for QA goes in exchange/reference-video/.

Large binaries (.fbx, .glb, .mp4, .task) ride Git LFS — see .gitattributes. Clean out exchange/ folders once a take has shipped into the game repo.

Layout

  • .claude/skills/ — Claude Code skills (auto-discovered when running Claude here)
    • animation-creation/ — creating clips on the shared Quaternius skeleton: existing packs, Mixamo/Kevin retargeting, composite baking, dance JSON (paths reference the ariki-game repo)
    • iclone-video-mocap/ — iClone 8 + Video Mocap plugin advisory: filming rules, workflow, cleanup, FBX export, game integration
    • pose-estimation/ — MediaPipe video→pose-landmark extraction (scripts/extract_pose.py, compare_poses.py; models in models/, venv rebuilt via scripts/setup.sh)
    • retarget-animations/ — deprecated early retarget notes (kept for history)
  • tools/ — Blender-headless retargeters (all bake onto the Quaternius rig and export mesh-stripped GLB, one NLA track per clip)
    • cc_retarget.py — Reallusion CC/iClone CC_Base_* FBX (60fps; TempMotion guard)
    • mixamo_retarget.py — Mixamo FBX (prefix auto-detect)
    • kevin_retarget.py — Kevin Iglesias Unity FBX (B-* rig; hardcoded target path — non-portable)
    • mocap_retarget.py — MediaPipe pose JSON → GLB (rotation solving, no source armature)
    • bake_run_punch.mjs — composite upper/lower clip baking reference
  • AGENTS.md / .agents/ — agent context (identity, wiki, plans, rules); see AGENTS.md for the knowledge map

Canonical target rig

All retargeters default to ariki-game's assets/quaternius/base-characters/.../Godot - UE/Superhero_Male_FullBody.gltf via a repo-relative path — when running from this repo, pass --target with an explicit path to that GLTF (or a local copy). Output GLBs are consumed by ariki-game's ClipCatalog from assets/quaternius/{kevin,mixamo,dancegen}/ as <pack>/<ClipName>.

Provenance

Copied (not yet removed) from ariki-game tools/ + .claude/skills/ + .agents/plans/, and ~/.claude/skills/pose-estimation. The ariki-game originals are still in place; the Windows-side iClone FBX conversion handoff (ariki-game/.agents/handoff/iclone-fbx-conversion.md) depends on them.

S
Description
No description provided
Readme 5.3 GiB
Languages
Python 97.3%
HTML 1%
JavaScript 0.7%
Roff 0.7%
PowerShell 0.2%