# W-REALISTIC, 17 October 2026

Deliverable: `gex44:/opt/creature-lib-20261017/`.

Three accepted assets: stag, deer, dark hound. All rated **OK at game distance**.
Fox and horse are **BAD in motion** and excluded. Boar was not attempted: no pig/boar rig in the inspected Quaternius pack.

See workspace-root `REPORT_REALISTIC.md`, `catalog_entries_realistic.json`,
`evidence_realistic.json` and `realistic-contact-sheet.png`. The remote master
`REPORT.md` has the appended section. No Factory, Engine or game integration.

## Evidence

- `validate.mjs`: actual browser Three.js GLTFLoader and AnimationMixer, six clips,
  real packed textures, hero/head/rear/clip captures, measured foot-contact speeds.
- `evidence.mjs`: matched-camera stylised comparisons and side walk/run videos.
- `node_validate.mjs`: independent Node loader, all skinned vertices at 61 poses per
  clip, packed-image decode, same source clip names and durations.
- `contracts.mjs`: four-weight limit, tight normalization check, +Z facing, rigid
  upper-antler measurements over all clips.
- Existing remote `scripts/audit_glb.py`: independent geometry audit, unchanged.
- `test_delivery.py`: final delivery shape, hashes, files, exclusions and report.

The only preview server was a disposable loopback HTTP server on port 8771,
serving the asset folder. It is not a deployed app. Browser uses the existing
read-only Three.js/Playwright dependencies and software WebGL. No frame-rate claim.

## Pipeline and retained stages

All scripts are task-scoped. They intentionally have absolute task paths and
refuse to overwrite output GLBs. Do not rerun them over a delivered folder.
For reproduction, use a new disposable folder and change the `P` constant in a
copy of the scripts, preserving the relative source/donor layout. Existing
candidates are retained so no paid re-generation is needed.

1. `generate.py`: five generated photographic-style standing references, then one
   image-to-3D job at a time. All five used the existing C++ fallback after GPU
   memory errors. No service edits or restarts. Raw jobs/prompts are retained.
2. `bind.py`: body-axis alignment, measured four-paw fitting, nearest surface
   weights from real donor meshes only, anatomical exclusions, matte dielectric
   fur. **Never include Blender's hidden bone-display Icosphere as donor anatomy.**
3. `plant.py`: correct walk/gallop contact with the existing source poses and leg
   joint solving. Version 5 is the pre-clearance source.
4. `clearance.py`: floor clearance for head/tail and collapse poses, baked back
   into the same six actions with identical names/durations. Version 6 is the
   accepted candidate for stag/deer/dog.
5. `promote.py`: only the three accepted version-6 GLBs, exclusive file creation,
   exact catalog shape, renders and source-hash manifest.
6. Run browser checks against final paths, then independent Node/geometry/rig
   checks, `report.py` once to append, and `test_delivery.py`.

`fox_tail.py`, `horse_hair.py`, `horse_forelock.py` and probes are **rejected repair
experiments**, not successful recipes. The horse face-paint experiment also
stained adjacent face polygons. Attractive hero stills did not prove the fox or
horse worked: side gallop showed stretched tail membranes and spikes.

## Important limits

Generated meshes are not close-up cinematic assets. Hound attack has a closed
jaw. Source hit reactions remain exaggerated. Flat-ground contact corrections
are not slope IK. Worst sampled delivered gait ground crossing is about 1.03 cm;
the hound attack paw reaches about 1.65 cm below ground at one sampled pose.
Source motion transforms were corrected, not preserved byte-for-byte.

No nested agents, second-model critic, live-app tests, game combat tuning or
runtime deployment. All previous 29 GLBs remain byte-identical.
