Personal project · 2026

Stretchy Head

I'm not a 3D artist or a coder. I'm a director: I had a clear vision, and years of directing artists taught me where to push.

My role: concept, art direction, interaction design, QA
Built with: Claude, Tripo, Meshy, Nomad Sculpt, Blender, Gemini
Messages: my notes to Claude, edited for clarity
Timeline: Weekends and evenings, in three short bursts between March and October 2026

Play with her on my homepage →
The finished cartoon head of Hanna in her NASA cap, cheek stretched by a white cartoon glove

A tribute to the Super Mario 64 title screen, made over weekends and evenings. AI tools did most of the making. I designed the concept, directed every round, and refused to ship anything that wasn't right.

01March

The idea: Mario 64's stretchy face, with mine

On the Super Mario 64 title screen you can grab Mario's face and stretch it. I wanted that on my homepage, with my face and my real NASA cap. I developed the look in Gemini, then made front, side and back views for the 3D tools to work from.

The Super Mario 64 title screen, for reference
The original ReferenceSuper Mario 64, Nintendo, 1996
Hanna wearing her real NASA cap
MeMy real cap, with a 28 under the brim
The cartoon concept of Hanna in the NASA cap that the 3D model was built from
The characterConcept, developed in Gemini

02March 13

I asked Claude to build it from one brief

Before learning anything, I tested the shortcut: one brief, asking Claude to build the whole thing on its own. This is what came back. That was good news. It meant there was a real project in front of me.

The one-brief prototype: a photo of Hanna in an oval, wearing a cartoon red cap, squished sideways by a glove
The one-brief version, stretched.

03March

I tried to build it myself in Blender

I've directed CG artists for eight years, and I wanted to do every step myself. After two weeks in Blender, I could see how much craft it would take to get the look I wanted. I stopped, kept the cartoon style, and put the project down for five months.

My message to Claude · Mar 15
I will not hand off any steps.
My message to Claude · Mar 29
I'm having fun learning, but it'll take me a decade to make this look the way I want.

04August

The generated model fell apart when it moved

In August I came back to the original Meshy head. It was heavy and messy, so I asked Claude to simplify the geometry, retopologize it and clean it up, then cut a jaw so she could open her mouth. A model that heavy was beyond what it could clean by script. The mesh stayed cracked, with broken edges in the hair and holes in the cap, and the jaw cut tore the lips into a flap. Claude could measure the geometry, but it couldn't see what was wrong.

The Meshy head with its new jaw open: jagged, torn lips
Torn lipsFrom the jaw cut
The lower lip torn into a long flap
Lip flapStretched, it rips loose
Jagged, torn edges along the hair and the cap brim
Cracked edgesHair and brim, even at rest
Torn seams along the edge of the cap
Holes in the capSeen from above

Screenshots and recordings from the August 22 session.

My message to Claude · Aug 22
You can't really make 3D models. You're good at the code and interaction side.

05August – September

I built the interaction in 2D instead

I set the model aside and worked out the interaction with a flat photo cutout of me: the warp, the spring and the snap-back. It took seventeen versions. When grabbing the middle folded the face over itself, I diagnosed the bug that Claude's fixes kept missing. This is version 14. It worked, but when I tried to give her expressions with video, the tools changed my face too much, so I went back to 3D.

The 2D version: a photo cutout of Hanna's face stretched by a cartoon glove

06Early October

I found a way to animate her without rigging

The 2D version showed me she needed real facial reactions, which meant an animation system. Modeling had been hard enough that I didn't want to take on rigging. Then a Nomad Sculpt tutorial showed me layers: sculpt a second version of the face and slide between the two. For cartoon reactions that grow with how far you pull, that was exactly right. I sculpted a surprised face, and the length of the stretch became the slider.

In Nomad: sliding my mouth layer from closed to open.
The October 2 test: a plain sculpted face whose mouth opens as it's stretched

October 2: the first test. Pull further and the mouth opens further.

07October

Claude cut the mouth wrong, so I guided it

For that sliding mouth to work on the final, painted model, the model needed a mouth that could open. Claude kept cutting the mouth along the painted lips, and each fix made it worse. I stepped back to understand how it was approaching the problem, then explained how I'd do it by hand in my own tool: cut along the edge loop already in the model's wireframe. Claude had convinced itself of a different method. Once it followed the loop, the mouth opened cleanly.

The mouth cut along the painted lips: jagged teeth and streaks
Fix 1Cut along the paint: jagged teeth and streaks
Another automated attempt: the mouth opens with brown teeth
Fix 2Fewer streaks, but the teeth became a brown band
The model's wireframe around the mouth, showing the edge loop
My noteCut along this edge loop
My message to Claude · Oct 10
Cut along the wireframe lines, not along the painted lips.

08October

I directed how she behaves

I playtested eighteen builds and gave notes the way I would to an animator. A small pull leaves her face stretched, so you can pose a funny face. A big pull snaps everything back to normal. Leave her alone and she dances, then falls asleep. Most visitors stay about 20 seconds, so the best reactions happen early.

My message to Claude · October
Have her eyes dart back to the visitor now and then, like she's asking, "Are you really doing this?"

09October

I cut the game I'd added

I added a game: find each of her reactions to earn a star. Playtesting showed it didn't work. Each reaction is set off by something you can't see, like how hard or how often you pull, so players couldn't tell what to do, and the hints didn't help. Even I struggled to earn stars on purpose. The original Mario head has no goals, and it's still fun. I removed the game and kept the reactions.

A star flies from her face into a bar of five stars on the left
Find a reactionA star flies to the bar
A hint reads: Try: keep yanking me around
Get stuckA hint after 20 seconds
The fourth star lands with the label No thank you
Annoy herEven her "no thank you" earns a star
All five stars lit, with the message All five. Thanks for playing!
Find all five"Thanks for playing!"
My message to Claude · October
Should I just remove the game? This is supposed to be fun.

10October

What shipped

The head was done. The hard part was introducing me next to it. I had Claude run art direction, UX and copywriting rounds, with real comps for each. Every version put my name and headline in a separate block below her, so the toy and the introduction felt disconnected. Claude's pick was my name in giant letters behind her. I passed, slept on it, and came back with the answer: cartoons talk in bubbles. Now she introduces me herself.

Homepage review: Claude as art director, me as creative director

Comp: the homepage as a game title screen
Round 1 · Title screenClaude: Keep partsMe: Pass
Comp: the head framed as an artwork with a museum wall label
Round 1 · Gallery labelClaude: Keep the voiceMe: Pass
Comp: RODGERS as a giant masthead behind the head
Round 3 · MastheadClaude: RecommendedMe: Pass
Comp: HANNA and RODGERS above and below the head
Round 4 · Two linesClaude: RecommendedMe: Pass

What shipped

Me: Approved

My message to Claude · October
I'm not sure about my name in giant yellow letters behind her.

March to October

Nine versions of the head side by side, from a March photo cutout to the final October model

Nine versions of the same face, rendered from each stage of the build.

Claude wrote the code. I made her fun, and made her feel like me.

Who did what

Me

Concept, character and art direction. My own Blender and Nomad sculpting. Every playtest and QA note. The interaction rules. The key fixes: keeping the snap-back, using the stretch as the slider, and the edge-loop cut. Music, copy and shipping.

Claude

All the code: WebGL, physics, eyes, behavior, sound and site integration. All mesh surgery by script. Research into how the original Mario head worked, which led to its proposal for escalating reactions. I approved it and kept tuning it until each reaction felt earned.

Other tools

Meshy and Tripo for the models, Nomad Sculpt and Blender for my sculpting, Gemini for concepts and graphics, Runway, Topaz, and licensed music from Envato.

How she works

  1. Pull her face a littleShe holds the funny face you made.
  2. Pull furtherHer mouth opens wider and she looks more surprised.
  3. Pull hard and let goEverything snaps back into place.
  4. Watch her eyes mid-stretchThey dart back to you: are you really doing this?
  5. Stack up lots of small pullsIt's too much. She spins and shakes it off.
  6. Keep yanking her aroundShe shakes her head: no thank you.
  7. Drag the background fastShe spins out and sees stars.
  8. Leave her aloneShe dances, then dozes off.

Try it on my homepage.

In March I said I'd be hands-on for every step. I was, long enough to learn what the tools could and couldn't do. Then I handed off much of the implementation, but none of the judgment. That's the job I'd do on any team now that AI is part of every pipeline: know what good feels like, say exactly why something isn't there yet, and refuse to ship until it is.

A process video for this piece is coming to YouTube.