02 / THE RIGS
A face and a body,
rigged by models.
This exploration is about the rigs. A character sheet became a body rig and a face rig through a chain of Scenario models, each adjusted by hand where it fell short. The film that follows is the result of that work.
Every step of the actor went through a Scenario model. This is what each one did, and what we had to adjust by hand.
StepModelWhat it didWhat we adjusted
Character sheetsGPT Image 2Four sheets of the man; body with a blank sphere head, and the head aloneThe head was drawn with the mouth slightly open, so the jaw would skin cleanly
Body and head meshesMeshy 7.1, image to 3DBody and head built apart, 4K geometry, 4K PBR texturesFitted in Blender by the director; nothing was cut at the neck
Decimation and rebuildClaude Opus 5.5 3D, then GPT-6 Astra 3DOpus smeared the head texture; Astra rebuilt both meshes keeping the original UVs and colorsBody 150,000 faces, head about 120,000, loose shirt islands checked before rigging
Body and face rigGPT-6 Astra 3D92 bones with Unreal Mannequin names, fingers, twist bones, IK, and exactly 52 ARKit face shapesJaw weights repaired in space; eyes, teeth and tongue kept as separate meshes
Body motionUthana, Meshy and Cartwheel text to motionThree services compared; none was used as isEpic walk and idle retargeted by bone name, the panic pose built by hand
VoiceGemini 3.8 Flash TTSThe spoken linesA script turned loudness and vowel color into jaw and mouth shapes
01 / THE JAWSmooth in space, not on the mesh.
The first skin let the beard and hair shells lag behind the chin. Weights were smoothed by distance in space instead of along mesh edges, so every shell moves together, and the lip seam was kept sharp. The jaw opens up to 62 millimeters, and speech runs it at a fraction of that, with a gain between 0.36 and 0.62 depending on the take.
02 / THE CLEAN RIGChecked before it was trusted.
Body: 147,778 triangles, no unweighted vertex, at most four bones per vertex, weights normalized. Head: 114,887 triangles with exactly 52 face shape keys. Eyeballs, upper and lower teeth and tongue are separate meshes.
03 / THE LIMBSThe arm axis was a twist, not a bend.
A pose was rejected because the arm's X axis is the bone's twist. In this rig the upper arm lifts forward on Y and the elbow folds on Z, mirrored on the other side. The neck turns on local Y and nods on X. The spine leans forward on negative X.
04 / THE FACE CURVESOne key per frame.
The face tore when two keys landed on the same frame and the curve overshot. The face is now sampled every frame, summed and clamped, and a blink cancels squint and wide eyes.
05 / THE ENGINEWhat the import dropped.
The FBX import brought no textures, so the PBR materials were rebuilt in the engine. 4K textures filled the video memory and made patchy renders, so everything went to 2K except head skin and eyes.
06 / THE MOUTHVoice in, shapes out.
A script reads the voice track: loudness opens the jaw, low-energy sound rounds the lips, brighter sound spreads them. It runs per line, with a jaw gain tuned per take.
The film uses library walks and a hand-built pose, not motion capture. Afterwards the same rig was used to test Viggle's text to motion and video to motion models, which export a Mixamo skeleton.
A / ONE RETARGET, 52 BONESMapped by name.
A Mixamo profile was added to the retarget script and a test clip landed on all 52 mapped bones with none missing. The bone directions matched the source exactly.
B / THE ROLLHands were turned 83 degrees.
Directions matched but the hands were rolled a quarter turn, because the rig's rest pose differs from the T-pose by about 84 degrees. Adding that twist to the whole arm chain brought the palm error from 83 to 1.4 degrees.
C / THE SHOULDERA dent that three fixes made worse.
With the arm raised, the skin between neck and shoulder dents because the collarbone carries almost no weight on the trapezius. Moving weight, smoothing wider and damping the collarbone each made it worse. It is not repaired.