← Back to the tea house
← LEDGER
AO-018 / Sep 25, 2026

Six days of trying to put my character in 3D, every attempt side by side

Claude hand-built her in Blender, GPT-6 Astra hand-built her on the same brief, and TRELLIS.2 generated her before an agent rebuilt the mesh. The real renders, walk cycles and two models you can turn around, in the order they were made, labelled with facts and no scores.

Between 19 and 25 September two agents built Jefrie, my original character, as a 3D model about twenty times, by two methods. Each approach failed somewhere different. The hand-built models could walk but, in my words at the time, weren’t very good; the best-looking hand-built one held up from one camera angle only; and the generated mesh looked like her from every side but was a fused 685,000-triangle shell that couldn’t be rigged as it was, until an agent rebuilt it.

Everything below is the real output, in the order it was made, labelled with the date, the agent and how long the turn ran. I’ve left the judging to you.

This is what all of them were aiming at. Jefrie is a small girl in gunmetal armour with a half mask, a tattered red cape, a scythe bigger than she is, and a tail that weighs more than the rest of her.

Jefrie character reference sheet: front, side and back views, with the scythe
The target: her character reference sheetSeedream 5 on Higgsfield · the reference for every attempt from 23 Sep on

Method one: an agent builds her by hand in Blender

On the evening of the 19th I checked that the Blender MCP server worked, then typed: “You think you can 3d model this character?” Claude Code (Opus 5) built her out of primitives through the live Blender session. I kept asking for fixes, and every fix was a new version.

First blockout of Jefrie in Blender
1. Blockout19 Sep 19:23 · Opus 5 · two turns, 9 and 14 min
Four poses of the blockout
2. Four poses20 Sep 00:52 · Opus 5 · "also her tail is upside down"
Measured rebuild matched to the original image's camera
3. Measured rebuild20 Sep 01:40 · Opus 5 subagent, 47 min · 1,180 objects
Low-poly version
4. Low-poly20 Sep 10:33 · Opus 5 · 7 min
Close-up of the reworked head with the grin
5. Face rework20 Sep 11:24 · Opus 5 · 10 min
Version 4 hero render
6. v4 hero shot20 Sep 11:40 · Fable 5.1 · 15 min · 932 objects

Version 3 had the most measurement behind it. A subagent got a reference pack another session had made from the original image: 41 guidance maps, pose keypoints, and a camera it could solve. It placed everything by un-projecting measured pixels, so the horizon lands at 730.2 px against a measured 730, and all 14 pose joints reproject exactly. Its own notes list what was still wrong, starting with “This is a stylised blockout, not a sculpt.” Every measured number matched, and the result was still a blockout.

The same morning I asked for a walk. Each walk below came from one prompt, and each prompt was my correction of the one before: “Her knees bend the wrong way,” the tail should be “as thick as her body at the base,” and then the face, “your smile is weird, full of gums, and upsidedown.”

Walk v120 Sep 10:42 · Opus 5 · 8 min
Walk v2: knees, heavier tail20 Sep 11:05 · Opus 5 · 11 min
Walk v3: face and hair20 Sep 11:24 · Opus 5 · 10 min

The three walks play together: start any one of them.

A second agent, on the same brief

On the 21st I told Claude, “You’re not very good at this,” and asked whether it could drive GPT-6 Astra through the Codex app instead. I installed it, and Claude set Astra up with the same Blender MCP server, a read-only shell, and the same reference, and Astra built its version in the live Blender session in about fifteen minutes.

My verdict, when I saw it: “It does look far better than yours, but it only looks good from one angle. it should look good from every angle.” Astra’s second pass worked from eight camera angles. Both passes are in the orbit strip below: the top row is before, the bottom row after.

GPT-6 Astra's Jefrie from the matched camera
7. Astra v1, from the matched camera21 Sep 17:50 · GPT-6 Astra (Codex, high reasoning) · about 15 min
Eight-angle orbit of Astra v1 above and v2 below
8. The same model from eight angles, v1 above, v2 below21 Sep 18:33 and 18:47 · GPT-6 Astra

On the 23rd I made it a straight contest. One prompt, to both: build her from the new reference sheet, rig her, and animate a walk with the scythe, “Make sure the tail acts like a tail and her cape acts like a cape. Have astra also do the same and I will compare who is best.” Claude (Opus 5.5) and Astra ran at the same time, from the same files, and finished within about ten minutes of each other.

Claude on the left, Astra on the right23 Sep · same prompt, same files · Blender MCP, rigged, 4-second loop
The same two walks from the sideClaude left, Astra right

I picked Claude’s (“I like yours best”) and asked for more moves, with the rule that defines how she moves: the girl is feather-light, and the tail and scythe are heavy. It built a small physics pass for it, the scythe as an under-damped spring and the tail as an 11-point chain with gravity and friction, and rendered five actions in 26 minutes.

Run, tail jump, skid stop, spin attack, marionette attack23 Sep 18:39 · Opus 5.5 · 26 min

That same evening a third session (Opus 5.5) modelled her again from scratch, this time against a turntable video of her, and spent the night refining parts one at a time. The step I wanted to keep came from a question: I asked it to “map the shape of the blade directly by stamping the picture of the blade into 3d,” and my reply to the result was “Amazing, much better, We will use this method much more in the future.” The turntable it was working from is an H3 video, which I don’t publish, so here is only the Blender model it built by 19:13, before the stamping started.

9. Modelled from a turntable23 Sep 19:13 · Opus 5.5 · 32 min for this pass
Claude's walk-off model from the front
For comparison: the walk-off model, front23 Sep 17:42 · Opus 5.5

Method two: generate the mesh, then rescue it

On the 24th I asked the opposite question: are there open-source image-to-3D models that run on my 8 GB laptop GPU in ComfyUI? Claude found two, TRELLIS.2 and Pixal3D, installed them, and fed each the front panel of the reference sheet. TRELLIS.2 took 321 seconds and Pixal3D 258.

TRELLIS.2 output from four angles
10. TRELLIS.2, one image in24 Sep 20:51 · 321 s on an RTX 4070 laptop · 685k triangles
Pixal3D output from four angles
11. Pixal3D, same image24 Sep 20:45 · 258 s · 696k triangles
Wireframe close-ups of the TRELLIS.2 mesh
What that looks like underneathTRELLIS.2 wireframe · all triangles, one fused mesh, 9.4k UV islands

Then the real prompt: “Do you think you can rescue the trellis generation?” I wanted at least ten times fewer triangles, topology clean enough to rig, a new UV unwrap and new texture maps. It took an hour and 46 minutes. The result was 20,600 quads, about one thirty-third of the original, with baked colour, ORM and normal maps and a 29-bone rig. A second TRELLIS.2 run on a close-up of her head was merged on top. After midnight I asked for the cape, both kinds of ears, and a tail with a natural resting shape, and got v2.

Retopologised low-poly mesh in wireframe
12. The rescue: 20.6k quads24 Sep 23:10 · Opus 5.5 · 1 h 46 min
Low-poly body with the detailed head merged on
13. Head merged on24 Sep 23:29 · head: TRELLIS.2, 426 s · 28,486 tris
v2 with a straight tapering tail, repaired cape and ears
14. v2: new tail, cape and ears25 Sep 00:29 · Opus 5.5 · 50 min · about 28k tris
v2 rig pose test
v2 rig pose test25 Sep 00:29 · automatic 29-bone rig

My words when the rescue landed: “Amazing work so far. I like where this is going.” These last two you can turn around yourself. They’re the actual meshes, with the textures cut to 1024 pixels so they load in a couple of seconds.

Head-merge model

v2 model

What I’d tell myself on the 19th

Every approach got one thing right and something else wrong, and it was a different thing each time. Hand-building gave me a rig and a walk within a day, and a face I kept sending back. The second agent gave me a picture I liked better, from one camera. The generator gave me her from every side, as a shape that couldn’t bend. The last version is the generator’s shape with a built tail, a new topology and a rig done to it afterwards.

The other thing is where the rules came from. The heavy tail, the blade stamp and the “circle at the base” that stretches “like a cone” to the tip all started as me typing what was wrong with the last render. None of them was in my first prompt, which was one line long. The specification for this character got written by correcting twenty versions of her.