feat: clothing lane, character sources, and DCC bridges
Bulk import of the working lanes that were living untracked on the PC. Content: - characters/ Lena/male body lanes, bakes, texture work, run logs - clothing/ garment pipeline, configs, gates, contract docs - garments/ MD-authored garment sources (.zprj/.zpac) - UAL-Lib/ Universal Animation Library 2 source (.blend/.fbx/.glb) - tools/ blender_bridge, iclone_bridge, md_bridge, tailor, glm_agent - docs/, plans/, dev/, .agents/plans/ Repo hygiene: - .gitattributes: LFS now covers .blend, .zprj, .zpac, .obj, .npy and the Reallusion .iAvatar/.ccAvatar/.ccRestore containers. Without this the ~3.8 GB in this commit would land as raw blobs. .png/.jpg are left out on purpose — ~250 are already tracked raw and converting them would rewrite every one without shrinking history. - .gitignore: exclude /accurig/ (~1 GB AccuRig program files, redistributable from Reallusion, nothing authored here) and /dev/null/ (git-lfs hook copies dropped by a `>/dev/null` redirect on Windows). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -3,6 +3,10 @@
|
||||
Entry point to architecture law for this repo. Per-system detail lives in
|
||||
`.agents/wiki/architecture/`.
|
||||
|
||||
This file covers the **animation lane** (motion → clips). The repo also runs a
|
||||
**clothing lane** (garments → worn outfits) that targets the same skeleton —
|
||||
see `.agents/wiki/architecture/clothing-lane.md`.
|
||||
|
||||
## The one-sentence shape
|
||||
|
||||
PC-side motion capture (iClone 8 + Video Mocap) → this repo (Mac↔PC bridge,
|
||||
@@ -78,13 +82,53 @@ in `dancegen/` only.
|
||||
`tools/cc_retarget.py`, `mixamo_retarget.py`, `kevin_retarget.py`,
|
||||
`mocap_retarget.py` are **mirrors of `ariki-game/tools/`** — the game copies are
|
||||
authoritative; re-copy from ariki-game when they change (they have silently
|
||||
diverged before). `.claude/skills/` here mirror a subset of `ariki-game/.claude/skills/`
|
||||
plus `~/.claude/skills/pose-estimation` — see `README.md` Provenance section.
|
||||
diverged before; verified identical 2026-08-06). `.claude/skills/` here mirror a
|
||||
subset of `ariki-game/.claude/skills/` plus `~/.claude/skills/pose-estimation` —
|
||||
see `README.md` Provenance section.
|
||||
|
||||
The **character/body lane is authoritative HERE and is not mirrored** (moved out
|
||||
of ariki-game 2026-08-06): `tools/rigbait_decimate.py`,
|
||||
`make_lena_nude_body.py`, `_bake_nude_body_texture.py`,
|
||||
`_render_body_closeup.py`, `verify_body_variant.py`. Anything that authors a
|
||||
character mesh, rig, or body texture is born here from now on, governed by
|
||||
`characters/REGISTRY.md`. The game repo keeps only the historical committed
|
||||
generators (`make_lena_body.py`, `make_male_ib_quatskin_accurig.py`,
|
||||
`male_mesh_decimate.py`, the `_convert_lena_quat_v*` series): they are cited by
|
||||
game-side plans and some carry game-side tests.
|
||||
|
||||
### Which repo does a non-gameplay tool belong to
|
||||
|
||||
Decided by **subject, not by "is it gameplay"** — nothing in `ariki-game/tools/`
|
||||
is gameplay (no `.gd` runtime script references it at all), so that test would
|
||||
empty the folder into this one. Three questions, in order:
|
||||
|
||||
1. Does the engine, CI, or the game's own test suite run it? → **stays in
|
||||
ariki-game.** `asset_pipeline.py`, `game.sh`, `session.py`,
|
||||
`e2e_interaction.py`, `anim_qc.py`, `rig_pose_gate.py`,
|
||||
`targeted_reimport.sh`, `clothing_motion_qa.sh`, and every module a
|
||||
`tools/test_*.py` imports.
|
||||
2. Does it author characters or motion? → **here.**
|
||||
3. Neither? → it is **game-asset authoring** (trees, terrain, water, props,
|
||||
items, animals, VFX). Not gameplay, but not animation either — leave it there
|
||||
rather than making this repo a dumping ground.
|
||||
|
||||
Two things that keep tripping this up: some character tools have game-side tests
|
||||
(`brow_cover_math.py`, `generate_lena_brow_surface.py`, `test_mako_rig_math.py`),
|
||||
so they move with their tests or not at all — and **this repo has no test
|
||||
harness**, so receiving them means standing one up. And `anim_qc.py` staying is a
|
||||
deliberate split, not drift (see the two-QC-tools note above).
|
||||
|
||||
**Cross-repo paths in tools that moved here:** resolve the game checkout from
|
||||
`$ARIKI_GAME`, else guess the sibling directory and *verify it*, aborting with the
|
||||
path tried. Never let an ariki-relative default resolve silently wrong — same rule
|
||||
as `--target` above.
|
||||
|
||||
## See also
|
||||
|
||||
- `.agents/wiki/architecture/` — per-system detail (currently: this file covers
|
||||
the whole pipeline; split out if a subsystem grows its own doc).
|
||||
- `.agents/wiki/architecture/clothing-lane.md` — the clothing lane (reference
|
||||
image → Marvelous Designer → `clothing/` → worn outfit in-game).
|
||||
- `.agents/wiki/architecture/` — per-system detail (split a subsystem out when
|
||||
it grows its own doc).
|
||||
- `.agents/wiki/dances/REGISTRY.md` — naming/registry source of truth.
|
||||
- `.agents/wiki/iclone-bridge.md` — PC-lane routing stub.
|
||||
- `.agents/wiki/devops-reports/` — point-in-time audits and convergence reports.
|
||||
|
||||
Reference in New Issue
Block a user