reorg(characters): ship-time folders — lena_base_v01 ships, lane moves to work/lena
REGISTRY rewritten around the central rule: a character folder is born only when a body ships to ariki-game (<character>_base_v<NN> = ship ordinal). lena_nude dissolves accordingly: - characters/female/lena_base_v01/ — SHIPPED 2026-08-10: AccuRig GLB carrier, T-pose/rig FBX + JSON, previews, frozen README - characters/work/lena/ — the live lane: recipes 01-47 (incl. new 36-47: refill/sheets/clay/despeckle/musculature/spin/AccuRig export/graft/pose QC), masters (athletic_v04 blend + textures, accurig blend), lane-history README - hires_claude/hires_work intermediates (blends, logs, probes) pruned Supporting docs: AGENTS.md, working-files rule, rig-graft plan addendum, originals README, prune_lane.py. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# work/lena — the live lena lane
|
||||
|
||||
Grammar-exempt (REGISTRY rule 11). Nothing here is a shipped artifact; nothing here
|
||||
gets a registry row. When a body from this lane ships, its artifacts graduate into a
|
||||
new `characters/female/lena_base_vNN/` and this lane keeps going.
|
||||
|
||||
Governed by `.agents/rules/working-files.md`: **a version is a milestone, not a step.**
|
||||
|
||||
## Layout
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| `NN_*.py` | the recipes — 66 of them, stages 01→47. **These are the history.** Kilobytes each, and they regenerate any intermediate state from a master |
|
||||
| `masters/` | the three chain heads. Anything not here is scratch by definition |
|
||||
| `masks.npz` | garment/cup/brief/hem masks, transferred from the 953,966-v original by nearest vertex (p50 0.70 mm). Not regenerable without the full-res sculpt |
|
||||
| `_bust_wall_cache.npy` | bi-harmonic chest wall for `34_v04.blend` — an 8-minute CG solve. Regenerable, and invalid for any other mesh; `33`/`34` assert its shape against the vertex count before trusting it |
|
||||
| `reference_breasts.jpg` | shape reference |
|
||||
| `README_lane_history.md` | the full stage-by-stage record, including the dead ends |
|
||||
|
||||
## The masters
|
||||
|
||||
| file | v | what it is |
|
||||
|---|---|---|
|
||||
| `masters/34_v04.blend` | 860,389 | full-res sculpt head. Start here for any shape change |
|
||||
| `masters/athletic_v04.blend` | 31,111 | game-res head — decimated, re-atlased, despeckled, athletic maps. This is what `lena_base_v01` was rigged from |
|
||||
| `masters/lena_nude_accurig_glb_v01.blend` | 31,111 | the same body with AccuRig's skeleton and weights grafted on |
|
||||
|
||||
All three have their textures **packed** — they carry no external image dependencies
|
||||
and can be moved freely. `athletic_v04_{base,normal,rm}.jpg` sit alongside as loose
|
||||
copies of the shipped maps, for re-shipping a texture without opening Blender.
|
||||
|
||||
Filenames here deliberately keep the names the recipes know
|
||||
(`34_v04.blend`, `athletic_v04.blend`). The scripts take every path as a CLI argument,
|
||||
so the lane relocates cleanly, but renaming a master would strand the commands
|
||||
recorded in `README_lane_history.md`.
|
||||
|
||||
## Working here
|
||||
|
||||
- **Roll one working file.** Pass the same `work.blend` through experimental steps.
|
||||
Write a new named `.blend` only at a phase boundary or when something ships.
|
||||
- **Reuse one `review/` dir.** QA renders are regenerable and are gitignored.
|
||||
- **No `.blend1` autosaves** — step scripts set `save_version = 0` before saving.
|
||||
- Prune with `python tools/prune_lane.py characters/work/lena --recursive` (dry run;
|
||||
`--apply` to delete). Check no Blender process is mid-run first.
|
||||
|
||||
This lane reached **4.1 GB** before it was pruned on 2026-08-11 — 2.2 GB of it `.blend`
|
||||
snapshots, five 80 MB copies of the same mesh to land one crotch fix. That is the
|
||||
failure mode the milestone rule exists to prevent.
|
||||
Reference in New Issue
Block a user