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:
2026-08-06 15:55:43 -07:00
parent 3363209cac
commit 3ba86b2ea8
558 changed files with 68622 additions and 8 deletions
@@ -0,0 +1,36 @@
# .lanekeep — .blend files pinned as MASTER in this lane.
# Everything else here that a step script wrote is scratch: regenerable by
# re-running the NN_*.py recipe from the pinned master above it.
# Read by tools/prune_lane.py. One filename per line, # for comments.
#
# Rule: a .blend earns a line here only when a registered artifact in
# characters/REGISTRY.md was built from it, or it is the head of the live chain.
# Intermediate attempts (the 06b-06h melt series, the 10_healed/rimheal/seamheal
# series) never get pinned — only the state at the end of the fix.
# --- phase roots ---
00_welded.blend # raw original, slits welded shut. Root of every branch;
# keeps a re-sculpt from needing a fresh weld+isolate pass.
# --- masters of registered artifacts (see characters/REGISTRY.md) ---
06_final.blend # lena_nude_sculpt_glb_v01.glb — geometry master
07_polished.blend # lena_nude_sculpt_glb_v01.glb — textured master
10_patch.blend # lena_nude_sculpt_glb_v02.glb — master (original skin retained)
27_clean.blend # lena_nude_sculpt_glb_v03.glb — geometry master (phase boundary:
# line heal + cleavage fillet + flipped-face repair, pre-texture)
29b_final.blend # lena_nude_sculpt_glb_v03.glb — textured master, HEAD 2026-08-06.
# 27_clean + on-body tone levelling (29_tone3d.py str 1.0, 25 passes)
34_v04.blend # lena_nude_sculpt_glb_v04.glb — master, HEAD 2026-08-06. 29b_final with
# the bust rescaled to k=0.5 per the approved concept turnaround.
10_welded.blend # parent of the v03 chain. Kept as the fallback until v03/v04 are
# accepted; 11-15 regenerate it from 10_patch, so unpin then.
# _bust_wall_cache.npy is the bi-harmonic chest wall for 29b_final (an 8-minute CG solve).
# Keep it while bust size is still in play: 33/34 reuse it and a different k then costs
# seconds instead of minutes. It is regenerable, and invalid for any other mesh — both
# scripts assert its shape against the vertex count before trusting it.
# 17_healed / 18_smoothnrm / 22_lines / 23_cleavage / 26_geo / 29_final and the
# rejected atlas-tone attempt were per-step snapshots and have been pruned; the
# 17/25/26/29 recipes rebuild them from 10_welded.