mesh-forge
One photo in — a rigged, textured, animatable 3D character out. All of it runs locally on the Mac mini, no API needed.
The character
The rig
The face
forge speak. Rebuilding these after the mesh upgrade also flushed out a real bug: the face detector's landmark-to-photo mapping multiplied by the upscaled crop size instead of the original crop, planting the "face" on her chest — in the first build the shape keys had been animating the blouse. Fixed; the keys now move ~7,000 face vertices and nothing else.What changed since the first build
The first mesh (Hunyuan3D-2, 1.1B shape model, 256³ voxels) was pillow-soft: merged legs, mitten hands, no facial detail. Three things fixed the foundation:
1. The 3.0B v2-1 shape model — a real mouth, a real nose, limb separation and crisper cloth folds wherever the budget went;
2. Octree 384 instead of 256 — 2.3× the faces, and the head detail survives;
3. Tight-crop conditioning — the subject fills the conditioning frame instead of a padded canvas.
How the texture works
Hunyuan3D's own paint stage needs a CUDA rasteriser, so it can't run on Apple silicon. Instead the pipeline projects the photo onto the mesh: every vertex is mapped through a front orthographic camera aligned with the subject in the image, and the photo itself is used as the texture — no atlas, no resampling, so the face keeps every pixel it had. The back of the mesh inherits the front's colours; that is the honest limit of a single-view reconstruction.
State of play
| Stage | Status |
|---|---|
| Cutout | working (rembg) |
| Image → mesh | working — Hunyuan3D v2-1 (3.0B) local at octree 384; TripoSR for drafts |
| Texture | working — photo projection |
| Body rig | body fit good; arm chains mid-air — needs a per-limb aim pass |
| Face rig | working — 19 ARKit keys on the real face, driven by forge speak |
| Hosted textured runs | held off for now per your call — fal top-up whenever you want one |