FlashBoards LearnPanel
  1. Learn
  2. Acting & Casting
  3. AI Character Sheet

Acting & Casting · AI filmmaking

AI Character Sheet

Also called: model sheet, turnaround sheet, expression sheet, pose sheet, reference sheet

An AI character sheet is one generated image that shows the same character from every side, in a range of poses and expressions. It is the reference you attach to every later prompt — and the way into a film scene. Below: what works, what does not, and the exact prompts.

Watch first: the whole guide in 1:47, hosted by Yaro
Video script

Hi, I'm Yaro. Every time I prompt the same character, the AI hands me a brand new stranger. Today we fix that with a character sheet.

It's one image: the same person from every side, in poses and expressions. Attach it to every later prompt, and she comes back as one person, not a new cousin.

The simplest sheet: a face close-up next to the full body, on plain white. Every freckle, the scar, the boots. Meet Mara Vale.

We made everything twice. Nano Banana 2 Lite is faster. GPT Image 2.5 actually keeps Mara.

Step one, the turnaround: front, back, left, right. GPT Image keeps the prompt order. Nano Banana shuffles them like a card trick.

Step two, poses. Glue ten pose photos into one five by two chart. Picture one is the chart, picture two is the sheet. GPT Image: ten out of ten. Nano Banana? The models from the photos refuse to leave. Heels, stockings, the whole crew.

Same trick for faces: nine expressions, nine out of nine. Mara has never been this dramatic.

Step three: give the sheet a back. Front only, and every shot from behind invents a new ponytail. Add one back panel, and nine out of nine match.

Then the fun part. Sheet first, film frame second, one line of prompt, and Mara replaces the actor. Ten out of ten frames. Here's... Mara!

One rule: ten panels or fewer. More panels, less detail, and grids start to break.

Every exact prompt is in the article below. Scroll down. Mara's watching. She's got every angle covered.

What it does
Puts every angle, pose and expression of one character into a single reference image the model can read at once.
Use
GPT Image 2.5 with a pose or expression chart as picture 1 and the character sheet as picture 2.
Avoid
Nano Banana 2 Lite for sheets from reference photos: the people in the references survive.
Try this prompt
Picture 1 is a chart of 10 poses in a 5-column × 2-row grid. Redraw it as a new photo session of the woman from picture 2 — her face, hair, clothes an…
Mara Vale turnaround: front, back, left and right profile in one image
Mara Vale from four sides in one image — front, back, left and right profile — from two anchor pictures and a two-sentence prompt, made with GPT Image 2.5. The images and videos on this page are source experiments, left unedited.

The short answer

We made every sheet and every film frame on this page twice — with Nano Banana 2 Lite and with GPT Image 2.5 Sunburst, same inputs. Nano Banana is faster, but it keeps losing the character: people from the references survive in pose and expression sheets, and the actor survives in film frames. GPT Image kept Mara in every panel and every frame, from one short prompt, with two inputs and a three-sentence prompt.

  • Turnaround✕ views out of order✓ in prompt order
  • Pose sheet · 10 poses✕ 5–8 of 10✓ 10 of 10
  • Expression sheet · 9 faces✕ 0–7 of 9✓ 9 of 9
  • Character in a film frame✕ the actor survives✓ 10 of 10
  • Seen from behind✕ front-only sheet: a new back each time✓ sheet with a back: 9 of 9 the same

Click any image to open its generation card: the prompt and every input in the order the model saw it.

Meta-skill

character — one skill that links them all

Give it your photo. It makes your character’s sheet on GPT Image 2.5 — the close-up and the full body, a turnaround, pose and expression sheets, a back view — with the two-sentence prompts, sizes and checks from this page, then hands the sheet on to new images and film frames.

⬇Download meta-skillcharacterThe router that links every step — sheet · consistency · film frames
  1. 1character-sheetFace close-up + full body from your photo
  2. 2character-sheetTurnaround, pose and expression sheets from charts
  3. 3character-sheetGive the sheet a back
  4. 4character-consistent · character-replaceThe same character in every image and film frame

What is an AI character sheet?

In animation a model sheet keeps a character “on model”: the same face, proportions and costume from every angle. An AI character sheet does the same job for a model — it is the picture you attach to every later prompt, so the character comes back as one person instead of a new stranger each time. It starts from two anchor images, a front close-up and a front full body, built as described in consistent AI character.

The picture we attach everywhere below is the simplest sheet of all: an extreme close-up of the face next to the full body, on white. It carries the face at full detail and the whole outfit in one input.

Mara Vale, extreme face close-up and full body in one imageFace · extreme close-upFull body · front
The input for every exampleCharacter sheet
Face
extreme close-up, every freckle and the scar readable
Body
full length, front, the whole outfit to the boots
Background
plain white — only the person travels on
Made from
two anchors, one short prompt, first try

Goes in as picture 1 or 2 next to a chart or a film frame.

1 · Turnaround in one image

Two anchors in, one prompt: “four full-body views in one row on a plain white background — front, back, left profile, right profile. Same person and same clothes in every view, no text.”

✕How not toNano Banana 2 Lite
image
  • The four views are there, but in its own order — front, profile, profile, back — not the order the prompt asks for.
  • Softer detail on the jacket and the face.
✓How toGPT Image 2.5 Sunburst
image
  • Front, back, left, right — exactly in the order of the prompt.
  • Sharper fabric, seams and face; a clean white background.
The prompt
Character turnaround of the woman from pictures 1–2: four full-body views in one row on a plain white background — front, back, left profile, right profile. Same person and same clothes in every view, no text.

2 · Pose sheet from ten references

Poses are easier to show than to describe, so they come from photos. We glued ten pose references into one chart in a 5 × 2 grid — a layout step, not a generation — and asked for the same grid with Mara in every pose.

Picture 1 · pose chartPicture 1 · pose chart
Picture 2 · character sheetPicture 2 · character sheet
InputsPose chart + character sheet
Picture 1
ten pose photos glued into one 5 × 2 chart — a layout step, not a generation
Picture 2
Mara’s sheet: face close-up + full body
Output
the same 5 × 2 grid, 1600 × 1200

Nano Banana got the same ten references — glued or separate — plus the two anchors.

✕How not toNano Banana 2 Lite
Ten separate references · about 5 of 10
Ten separate references · about 5 of 10
Best case · chart as the base image · 8 of 10
Best case · chart as the base image · 8 of 10
  • Strangers survive. With separate references about half the panels stay the models from the photos, in their own clothes, heels and stockings.
  • Even the best setup fails on styled frames. With the chart as the base image the upside-down figure in striped tights and the backbend come back untouched.
  • More warnings in the prompt made it worse: the grid broke into fifteen panels.
✓How toGPT Image 2.5 Sunburst
10 of 10 · every run
10 of 10 · every run
  • Mara in all ten poses, in her bomber and boots — the leg raise, the upside-down pose and the backbend included.
  • Nothing of the chart people survives: no heels, stockings, sunglasses or bags.
  • Two inputs and a three-sentence prompt.
The prompt
Picture 1 is a chart of 10 poses in a 5-column × 2-row grid. Redraw it as a new photo session of the woman from picture 2 — her face, hair, clothes and boots in every panel — each panel keeping exactly its pose, body angle and camera angle. The same 5 × 2 grid, one plain mid-grey studio backdrop and soft even light in every panel, no text.
GPT Image 2.5
Pose chart
Pose chart✓ GPT Image 2.5
Move across the imageBefore → after · poses
Stays
every pose, body angle and camera angle of the chart
Changes
the person — face, hair, clothes and boots are Mara’s
Backdrop
one grey studio wall instead of ten different shoots
Score
10 of 10 panels

The chart on the left, the sheet on the right — move across to compare panel by panel.

3 · Expression sheet from nine references

The same approach for faces: nine expression references glued into a 3 × 3 chart, plus the character sheet.

Picture 1 · expression chartPicture 1 · expression chart
Picture 2 · character sheetPicture 2 · character sheet
InputsExpression chart + character sheet
Picture 1
nine expression photos glued into one 3 × 3 chart
Picture 2
Mara’s sheet: face close-up + full body
Output
the same 3 × 3 grid, 1536 × 1536

Nano Banana got the same nine references — glued or separate — plus the close-up anchor.

✕How not toNano Banana 2 Lite
Nine separate references · 7 of 9
Nine separate references · 7 of 9
Chart as a reference · 0 of 9
Chart as a reference · 0 of 9
  • Two strangers with separate references — the laughing girl with her hands on her cheeks stays herself.
  • The chart comes back unchanged when it goes in as a reference: nine strangers, no Mara.
  • Only an edit phrasing with the chart as picture 1 gets all nine — and the expressions come back softer than in the photos.
✓How toGPT Image 2.5 Sunburst
9 of 9 · every run
9 of 9 · every run
  • Mara in all nine panels with the expression, gaze and framing of each reference — even the extreme close-up of the nose and lips.
  • No earrings, fringes or long hair from the references; one grey backdrop.
  • The same three-sentence prompt — only “poses” became “facial expressions”.
The prompt
Picture 1 is a chart of 9 facial expressions in a 3 × 3 grid. Redraw it as a new photo session of the woman from picture 2 — her face, hair and clothes in every panel — each panel keeping exactly its facial expression, head angle, gaze and framing. The same 3 × 3 grid, one plain mid-grey studio backdrop and soft even light in every panel, no text.
GPT Image 2.5
Expression chart
Expression chart✓ GPT Image 2.5
Move across the imageBefore → after · expressions
Stays
each expression, gaze, head angle and framing — even the extreme close-up
Changes
the face is Mara’s: freckles, scar, dark hair
Gone
earrings, fringes, long hair and black-and-white of the references
Score
9 of 9 panels

The chart on the left, the sheet on the right — move across to compare panel by panel.

4 · The character in a film frame

To put Mara into a real scene, the actor in a film frame is replaced: the character sheet first, the film frame second. Close-ups are the hardest case — the actor’s face fills the frame, and a famous or lookalike face pulls the model back.

✕How not toNano Banana 2 Lite
The Shining · the actor survives
The Shining · the actor survives
Don’t Breathe · the actress survives
Don’t Breathe · the actress survives
  • The actor comes back in about one run in six — even with a long prompt that assigns a role to each picture, gives the character’s face in words and forbids returning picture 2.
  • The gaze and the expression come out softer than in the film.
  • Every new failure needs another rule in the prompt.
✓How toGPT Image 2.5 Sunburst
The Shining (1980)
The Shining (1980)
Don’t Breathe (2016)
Don’t Breathe (2016)
  • Mara in 10 of 10 frames across five films, with the gaze, head turn and expression of the film.
  • One line of prompt that says nothing about the frame, so it works on any shot.
The prompt
Picture 2 is a frame from a film. Shoot it again exactly the same — the same camera, framing, set, light, pose, head turn, gaze and expression — but the person in it is the woman from picture 1: her face, hair and clothes. Change nothing else.

✓ The same one-line prompt on three more films:

This Boy’s Life (1993)
This Boy’s Life (1993)
Do the Right Thing (1989)
Do the Right Thing (1989)
The Color Purple (1985)
The Color Purple (1985)

5 · Give the sheet a back

A sheet that shows the character only from the front tells the model nothing about the back. So every shot from behind invents it again — a long sleek ponytail or a short wavy one, a black collar or an olive one, orange stripes or a faded blush, a seam down the back or none. Add one panel with the back, and the back stops changing.

✕How not toSheet: face + front only
Front-only sheet · 8 backs, no two alike
Front-only sheet · 8 backs, no two alike
  • The ponytail changes length, shape and side from run to run.
  • The jacket back changes: collar colour, orange shoulder bands, a centre seam that comes and goes, the hem colour.
  • In film frames pieces of the actor’s gear survive at the back — knee braces, straps, tall boots.
✓How toSheet: face + front + back
Sheet: face · front · back
Sheet: face · front · back
Back from the sheet · 9 of 9 the same
Back from the sheet · 9 of 9 the same
  • Ponytail and jacket back match the sheet in 9 of 9 — six Mad Max frames and three plain back views.
  • The back panel was made from our GPT turnaround, so it matches the front exactly.
  • What still slips in the film frames is not the back but the warm grade and bits of the actor’s gear — a costume line in the prompt handles those.

6 · From the sheet to a film scene

2 ways · MiniMax H3

The same “Here’s Johnny!” moment from The Shining (1980) — two shots, 9 seconds — animated with MiniMax H3 Max Turbo in two ways.

Way A · The sheet as the start frame, the scene in words

One input: the sheet on a 16:9 canvas as the start frame. The prompt says the video opens on the first shot at full screen and the sheet never appears, then describes the scene shot by shot — camera, action in three steps with every turn given as a side of the frame, the cut, the lines. The face holds; the room, the lens and the light are the model’s reading of the words. Good for a new scene, or when you have no frames.

Top: the film. Bottom: H3 from the sheet and the words — 9 s, 768P, one generation.
The prompt · JSON
{
  "output": "Full-screen live-action scene from the film The Shining (1980) from its very first frame: in a pink hotel bedroom Mara hacks at a white door with an axe, glances back over her shoulder, then goes to the door; after a hard cut her face is wedged into the splintered gap of the door and she grins and calls out \"Here's Johnny!\". Two shots with a hard cut at the given time. The video opens directly on Shot 1 at full screen. The reference image, its white background and its two panels never appear in the video, not even for a single frame, and the camera never pushes in on it.",
  "reference_image": {
    "panels": {
      "1": "left panel: an extreme close-up of Mara's face",
      "2": "right panel: Mara standing full body in her clothes"
    },
    "rules": [
      "The reference image is only a reference for who Mara is: her face, hair, body and clothes. Never use its framing, its white background or its light in any shot.",
      "Mara keeps exactly the face of panel 1 and the clothes of panel 2 in every shot."
    ]
  },
  "characters": {
    "mara": {
      "name": "Mara Vale",
      "face": "exactly the face of panel 1 — the same face, skin, freckles, the thin scar through the outer end of her left eyebrow, the same hairline",
      "look": "a 29-year-old woman, dark brown almost black hair pulled back into a loose low ponytail with loose strands around the face, pale freckled skin",
      "wardrobe": "exactly the clothes of panel 2: a worn olive-green nylon bomber jacket, a black fitted turtleneck, dark charcoal cargo trousers",
      "voice": "a low, hoarse female voice, loud and sing-song"
    },
    "wendy": {
      "name": "Wendy Torrance",
      "actor": "Shelley Duvall",
      "look": "never seen: only her voice from behind the door",
      "voice": "a thin, high, breaking female voice, shouting through the door"
    }
  },
  "shots": [
    {
      "shot": 1,
      "camera": "a medium shot at eye level in a pink hotel bedroom with a bed, a lit table lamp with a cream shade and a white panelled door at the RIGHT edge of the frame; warm lamplight, 1980 35mm film look; the camera pans a little toward the RIGHT side of the frame following Mara to the door, then holds still",
      "action": [
        "The very first frame is already this shot, full screen, alive from that frame.",
        "Exactly one person is in the frame in this shot: Mara.",
        "BEGINNING: Mara swings a long wooden axe high over her head with both hands and brings it down hard onto the white door at the RIGHT edge of the frame; the wood splinters.",
        "THEN: Mara pulls the axe free, turns her head over her shoulder toward the LEFT side of the frame and bares her teeth in a wide grin, then swings the axe again at the door on the RIGHT side of the frame.",
        "END: Mara lowers the axe, turns her back to the camera and steps up to the broken door on the RIGHT side of the frame, leaning her head toward the gap in the wood."
      ],
      "sound": "heavy axe blows splitting the wood of the door, each blow with a sharp crack of splinters",
      "dialogue": [
        {
          "speaker": "wendy",
          "delivery": "a high, breaking scream from behind the door",
          "on_screen": false,
          "when": "during the second axe blow, early in the shot",
          "line": "<d>[English] Stop it!</d>"
        }
      ]
    },
    {
      "shot": 2,
      "cut_at": "00:07.000",
      "camera": "a static close-up at eye level of a splintered gap in a white wooden door, the broken white boards framing the gap on both sides; flat pale light; the camera holds still",
      "action": [
        "Exactly one person is in the frame in this shot: Mara.",
        "BEGINNING: Mara's face is wedged into the splintered gap of the white door in the middle of the frame, her face turned a little toward the RIGHT side of the frame, her eyes rolled hard toward the RIGHT side of the frame, a wide grin showing her teeth.",
        "THEN: right after the cut Mara stretches her mouth wide and calls out her line, her head pushing a little forward into the gap, her eyes staying on the RIGHT side of the frame.",
        "END: Mara holds the wide manic grin, both rows of teeth bared, eyes on the RIGHT side of the frame."
      ],
      "sound": "Mara's voice through the broken door",
      "dialogue": [
        {
          "speaker": "mara",
          "delivery": "loud and sing-song, the first word drawn out long, mouth stretched wide, teeth bared, eyes held on the RIGHT side of the frame",
          "on_screen": true,
          "when": "right after the cut, through most of the shot",
          "line": "<d>[English] Here's Johnny!</d>"
        }
      ]
    }
  ],
  "sound": {
    "ambience": "a quiet hotel apartment, the dry crack of splintering wood; a low, droning, dissonant score",
    "speech": "exactly these spoken phrases, each said once, in this order: Wendy \"Stop it!\" / Mara \"Here's Johnny!\""
  }
}

Way B · Replace the actor in the first and last frame, animate between

The first and last frames of the moment come from the film; GPT Image puts Mara into both with the one-line prompt above; H3 animates between them with the same shot-by-shot prompt. Framing, set, light and colour are fixed by two real frames, and Mara is already in both — the video model only fills the motion. This is the way to stay close to the film.

Film · first frame
Film · first frame
Start frame · Mara
Start frame · Mara
Film · last frame
Film · last frame
End frame · Mara
End frame · Mara
Top: the film. Bottom: H3 between the two replaced frames — 9 s, 768P, one generation.
The prompt · JSON
{
  "output": "Full-screen live-action scene from the film The Shining (1980): in a pink hotel bedroom Mara hacks at a white door with an axe, glances back over her shoulder, then goes to the door; after a cut her face is wedged into the splintered gap of the door and she grins and calls out \"Here's Johnny!\". Two shots with hard cuts at the given times. The video begins exactly on the given first frame and ends exactly on the given last frame.",
  "keyframes": {
    "first_frame": "the first frame of shot 1: a medium shot at eye level in a pink hotel bedroom: Mara stands in the middle of the frame, turned toward the RIGHT side of the frame, both hands swinging a long wooden axe high over her head, blurred with motion; a white door and a bed behind her on the LEFT, a lit table lamp with a cream shade at the lower RIGHT",
    "last_frame": "the last frame of shot 2: a close-up of a splintered gap in a white wooden door; Mara's face fills the gap in the middle of the frame, her eyes turned hard toward the RIGHT side of the frame, a wide grin showing her upper and lower teeth, strands of dark hair falling over her forehead; the broken white boards frame her face on both sides",
    "rules": [
      "Each shot looks exactly like the first frame or the last frame: the same framing, people, faces, clothes, objects, background, colour and light; add nothing and remove nothing.",
      "It is always one single full-screen shot at a time; the screen is never split."
    ]
  },
  "characters": {
    "mara": {
      "name": "Mara Vale",
      "look": "a 29-year-old woman, dark brown almost black hair pulled back into a loose low ponytail with loose strands around the face, pale freckled skin, a narrow oval face with high flat cheekbones, straight dark brows, deep-set grey-green eyes, a wide mouth, a thin pale scar through the outer end of the left eyebrow",
      "wardrobe": "a worn olive-green nylon bomber jacket, a black fitted turtleneck, dark charcoal cargo trousers",
      "face": "exactly the face on the given first and last frames — the same face, skin, features and hairline in both shots",
      "voice": "a low, hoarse female voice, loud and sing-song"
    },
    "wendy": {
      "name": "Wendy Torrance",
      "actor": "Shelley Duvall",
      "look": "never seen: only her voice from behind the door",
      "voice": "a thin, high, breaking female voice, shouting through the door"
    }
  },
  "shots": [
    {
      "shot": 1,
      "camera": "a medium shot at eye level in the pink bedroom; the camera pans a little toward the RIGHT side of the frame following Mara to the door, then holds still; warm lamplight, exactly the given first frame",
      "action": [
        "The very first frame is exactly the given first frame, alive from that frame.",
        "Exactly one person is in the frame in this shot: Mara.",
        "BEGINNING: Mara brings the axe down hard with both hands onto the white door at the RIGHT edge of the frame; the wood splinters; the camera pans a little toward the RIGHT side of the frame with her.",
        "THEN: Mara pulls the axe free, turns her head over her shoulder toward the LEFT side of the frame and bares her teeth in a wide grin, then swings the axe again at the door on the RIGHT side of the frame.",
        "THEN: Mara lowers the axe to her side, the blade low in the hand on the RIGHT side of the frame, and turns her back to the camera.",
        "END: Mara steps up to the broken door on the RIGHT side of the frame, her back to the camera, leaning her head toward the gap in the wood."
      ],
      "sound": "heavy axe blows splitting the wood of the door, each blow with a sharp crack of splinters",
      "dialogue": [
        {
          "speaker": "wendy",
          "delivery": "a high, breaking scream from behind the door",
          "on_screen": false,
          "when": "during the second axe blow, early in the shot",
          "line": "<d>[English] Stop it!</d>"
        }
      ]
    },
    {
      "shot": 2,
      "cut_at": "00:07.000",
      "camera": "a static close-up at eye level of the splintered gap in the white door; flat pale light; the camera holds still",
      "action": [
        "Exactly one person is in the frame in this shot: Mara.",
        "BEGINNING: Mara's face is wedged into the splintered gap of the white door in the middle of the frame, her eyes turned hard toward the RIGHT side of the frame, a wide grin showing her teeth.",
        "THEN: right after the cut Mara stretches her mouth wide and calls out her line, her head pushing a little forward into the gap, her eyes staying on the RIGHT side of the frame.",
        "END: Mara holds the wide grin, teeth bared, eyes on the RIGHT side of the frame, exactly the given last frame."
      ],
      "sound": "Mara's voice through the broken door",
      "dialogue": [
        {
          "speaker": "mara",
          "delivery": "loud and sing-song, the first word drawn out long, mouth stretched wide, teeth bared, eyes held on the RIGHT side of the frame",
          "on_screen": true,
          "when": "right after the cut, through most of the shot",
          "line": "<d>[English] Here's Johnny!</d>"
        }
      ]
    }
  ],
  "sound": {
    "ambience": "a quiet hotel apartment, the dry crack of splintering wood; a low, droning, dissonant score",
    "speech": "exactly these spoken phrases, each said once, in this order: Wendy \"Stop it!\" / Mara \"Here's Johnny!\""
  }
}

Full body, from behind · Mad Max: Fury Road (2015)

The same way on a wide shot: Max stands with his back to us over the wasteland, his car on the left, the camera drifting in. A small figure seen from behind is harder — with the one-line prompt the model kept Max’s jacket and canteen in three runs of four. What fixes it is saying that nothing of the actor’s costume stays. The blind form below names no clothes at all and went four of four (checked 9 October 2026); the run shown here still named her clothes — also four of four — which the blind rule no longer allows.

Film · first frame
Film · first frame
Start frame · Mara
Start frame · Mara
Film · last frame
Film · last frame
End frame · Mara
End frame · Mara

The method · blind template

Picture 2 is a frame from a film. Shoot it again exactly the same — the same camera, framing, set, light, pose, head turn, gaze and expression — but the person in it is {character} from picture 1: their face, hair and clothes exactly as in picture 1. Nothing of the clothes, headwear or gear of the person in picture 2 stays. Seen from behind, it is clearly {character}. Change nothing else.

Example run · the prompt as tested (it named the clothes)

Picture 2 is a frame from a film. Shoot it again exactly the same — the same camera, framing, set, light, pose, head turn, gaze and expression — but the person in it is the woman from picture 1: her face, her dark hair in a low ponytail and her clothes from picture 1 — the olive-green bomber jacket, the black turtleneck, the charcoal cargo trousers and the black lace-up boots. Nothing of the actor's costume stays: none of his jacket, bags, belts, straps or gear. Seen from behind, it is clearly her. Change nothing else.
Top: the film. Bottom: H3 between the two replaced frames — 12 s, 768P, one generation.
The prompt · JSON
{
  "output": "Full-screen live-action scene from the film Mad Max: Fury Road (2015): on a desert ridge Mara stands alone with her back to the camera, looking out over the endless orange wasteland, her black battered car parked behind her on the LEFT; the camera drifts slowly closer and lower. One single continuous shot. The video begins exactly on the given first frame and ends exactly on the given last frame.",
  "keyframes": {
    "first_frame": "the first frame: an extreme wide shot at eye level on a sunlit desert ridge; a black, rusted, heavily modified muscle car stands on the LEFT side of the frame, its tail toward the camera, a pile of gear and debris on the ground beside its open door; Mara stands small on the RIGHT side of the frame with her back to the camera, dark hair in a low ponytail, olive-green bomber jacket, charcoal cargo trousers and black boots, facing the flat orange wasteland that runs to the horizon; a dark cone-shaped rock peak on the LEFT behind the car, rocky slopes on the RIGHT, a heavy dark cloud across the top of the frame, her short shadow on the sand",
    "last_frame": "the last frame: the same view a little closer and lower — the car is larger on the LEFT side of the frame, Mara still stands on the RIGHT side of the frame with her back to the camera, facing the wasteland, the horizon sitting a little lower in the frame",
    "rules": [
      "It is one single continuous shot, the same as the first and last frames: the same framing, people, faces, clothes, objects, background, colour and light; add nothing and remove nothing.",
      "It is always one single full-screen shot; the screen is never split."
    ]
  },
  "characters": {
    "mara": {
      "name": "Mara Vale",
      "look": "a 29-year-old woman, dark brown almost black hair in a loose low ponytail, pale freckled skin, lean wiry build",
      "wardrobe": "a worn olive-green nylon bomber jacket with orange at the shoulders and cuffs, a black turtleneck, dark charcoal cargo trousers, scuffed black high lace-up combat boots",
      "face": "exactly the person on the given first and last frames — the same hair, build and clothes; she is seen only from behind",
      "voice": "a low, hoarse, tired female voice, heard as her own inner voice-over, close and quiet"
    },
    "voice_in_her_head": {
      "name": "a child's voice",
      "look": "never seen: only a voice in her head",
      "voice": "a small, clear girl's voice, distant and echoing"
    }
  },
  "shots": [
    {
      "shot": 1,
      "camera": "an extreme wide shot at eye level; the camera glides very slowly forward and down toward Mara and the car through the whole shot, smooth and steady; bright hot desert sun, orange sand, a dark cloud overhead, exactly the given first frame",
      "action": [
        "The very first frame is exactly the given first frame, alive from that frame.",
        "Exactly one person is in the frame in this shot: Mara.",
        "BEGINNING: Mara stands still on the RIGHT side of the frame with her back to the camera, her feet apart, her arms down at her sides, looking out over the wasteland; hot wind moves loose strands of her hair and the dust along the ground.",
        "THEN: Mara stays almost completely still, her head turned a little toward the RIGHT side of the frame as she looks along the horizon; her shoulders rise and fall once with a slow breath; the camera keeps gliding closer and lower, the car growing on the LEFT side of the frame.",
        "END: Mara still stands with her back to the camera on the RIGHT side of the frame, her head level again, looking straight out at the wasteland, exactly the given last frame."
      ],
      "sound": "a hot, steady desert wind, fine sand ticking against the car's metal, a low droning score",
      "dialogue": [
        {
          "speaker": "mara",
          "delivery": "voice-over, low and flat, almost a whisper, her lips never seen",
          "on_screen": false,
          "when": "early in the shot, while she stands still",
          "line": "<d>[English] Me, or everyone else.</d>"
        },
        {
          "speaker": "voice_in_her_head",
          "delivery": "a distant girl's call, echoing, as if from far away",
          "on_screen": false,
          "when": "near the end of the shot, as the camera comes closer",
          "line": "<d>[English] Hello?</d>"
        }
      ]
    }
  ],
  "sound": {
    "ambience": "an empty desert ridge in the heat, wind and drifting sand; a low droning score",
    "speech": "exactly these spoken phrases, each said once, in this order: Mara (voice-over) \"Me, or everyone else.\" / a child's voice \"Hello?\""
  }
}

Where it goes wrong

  • The frame comes back in the sheet’s proportions. Automatic size follows the first input — set the size to the film frame’s aspect.
  • The head turns the wrong way in the video. Give every turn and look as a side of the frame, never as the actor’s left or right.
  • The sheet flashes in the video. Say in the first line that the video opens on shot one and the reference never appears.

7 · A whole scene, shot by shot

Joker (2019) · 71 s · 18 shots

The last test puts Mara into a full minute of film: the stairs dance from Joker (2019) — 71 seconds, 18 shots, from the lift to the cigarette at the foot of the stairs. One generation covers two shots: its start frame is the first frame of the first shot, its end frame is the last frame of the second shot, and the model makes the cut in between. Ten generations cover the scene.

Every keyframe with the dancer is replaced with Mara by GPT Image 2.5 — the replace prompt above, which keeps even a small figure seen from behind (this example run still named her clothes; the blind form does the same job). Frames without him — the empty alley, the call button, the closed lift door — go in exactly as they are; replacing them made the model invent a Mara who was never there.

start and end frames of the ten generations
The inputs of all ten generations: START on the left, END on the right. Yellow — Mara put into the film frame; blue — the film frame as it is, because nobody is in it.

The problem: the face drifts

With only a start and an end frame the model sees Mara’s face at most twice per generation. In between — in close-ups, turns and five to thirteen seconds of dancing — it has nothing to hold on to, and the face slides: rounder in one shot, older in another, the hair changes, at times it is simply another woman.

the same moments without and with the face board
The same five moments. Top: start and end frame only — the face changes from shot to shot. Bottom: with the face board — the same woman as the reference on the left.

The fix: give the face its own full frame

The end frame becomes a board: two full frames side by side on black. On the left, Mara’s face as close as it goes — brows to lips, filling a 16:9 frame; on the right, the true last frame of the scene. The prompt adds one frozen shot after the scene and makes four changes:

  • output — after the scene, a hard cut to the given last image, which stays as a still picture until the end;
  • last_frame — picture 1 is “only a reference for Mara’s face: never use its framing, background or light”, picture 2 is the true last frame;
  • rules — every shot is full screen, the pictures are never shown together, the board never appears inside the scene;
  • characters.mara.face — “exactly the face in picture 1 — the freckles, the scar through her left eyebrow, the mole, the hairline — in every shot”.
end frame as a face board
The end frame of one generation: Mara’s face on the left, the true last frame on the right.

The trade-off: cut off the board

The board has to show up in the video for the model to use it, so every generation runs a little longer than its two shots — the length of the shots plus about a second. At the end the model cuts to the frozen board. That tail is thrown away: find the cut, keep the scene before it, and fit it to the film’s length (the model usually gives the scene a few tenths of a second more). If a generation lingers on its start frame, the first moment goes too.

one raw generation with the board at the end
One raw generation: green — the scene, kept and fitted to the film; red — the face board after the cut, thrown away.

Watch it generation by generation

The whole scene with the film’s music. The small window is the film; the panel on the right follows the video — the generation that is playing, its start frame and its face board, and the prompt shot by shot, with the current shot lit.

The film

The recipe

  1. Cut the scene at every cut and pair the shots: one generation = two shots, 5–15 seconds; a long single shot goes alone.
  2. Take the keyframes — the first frame of the first shot and the last frame of the second, from the film itself, never from the other side of a cut.
  3. Replace the actor with your character in the keyframes that show the actor (GPT Image 2.5, the one-line prompt plus the character’s clothes). Keep frames with nobody in them as they are.
  4. Build the end frame as a board: the character’s face filling a 16:9 frame on the left, the true last frame on the right, on black.
  5. Write the prompt shot by shot — camera, action in three steps, every turn as a side of the frame, the music in words — and add the frozen board shot after the scene.
  6. Generate every pair at once, each at the length of its shots plus a second.
  7. Cut off the board, fit each scene to the film’s length, join the pairs and lay the film’s sound under them.

What we learned

  • Two shots per generation keep the poses: each shot is anchored by a real frame at one end.
  • A start and an end frame are not enough for a face over ten seconds — it drifts. A full-frame face reference on the end board holds it.
  • The board adds a second of generation per pair and one cut in the edit; it never reached the finished video.
  • Replace only what is there: a frame without the actor stays untouched.
  • Very short shots come out a little fast after fitting — the model likes to give a scene more time than the film does.

Conclusion. A character sheet gets a character into a still. To keep it through a scene, anchor every shot with a real frame, give the face its own full frame on the board, and cut the board off in the edit. The whole minute took ten generations and one pass through the edit.

The result in 1080p, upscaled

The ten generations again at 1080P, joined, the board cut off, with the film’s music. Then the joined minute went through the Starlight Fast 3 upscaler at 1080p: it redraws skin, hair, fabric and the brick behind her. Drag across the video — the left side is the video as it came out of the generations, the right side is after the upscale. How Starlight compares with other upscalers, and the measured results: AI Upscaling.

GeneratedUpscaled
0:00
Mara in the Joker stairs scene — ten MiniMax H3 Max Turbo generations at 1080P with the original music. Left: as generated. Right: after the Starlight Fast 3 upscale.
FlashBoardsBuild your character sheet

The sheet, the references and every take on one board.

Open FlashBoards

FAQ

6 questions
What is a character sheet for AI image generation?

A single image that shows one character from several angles, with expressions or poses, in a strict grid on a neutral backdrop. You attach it to later prompts so the model draws the same person every time.

Nano Banana or GPT Image for character sheets?

GPT Image 2.5. In our tests it kept the character in every panel of pose and expression sheets and in every replaced film frame, from a short prompt. Nano Banana 2 Lite is faster, but the people from the references — or the actor in a film frame — survive.

How do I make a pose or expression sheet from reference photos?

Glue the references into one chart in the grid you want, give it as picture 1 with your character sheet as picture 2, and ask to redraw the chart as a new photo session of your character, keeping each pose or expression. With GPT Image 2.5 that gave 10 of 10 poses and 9 of 9 expressions.

How do I put my AI character into a scene from a film?

Quick: give the video model your face-and-body sheet as the only start frame and describe the scene shot by shot. Close to the film: replace the actor in the first and last frames with GPT Image, then let the video model animate between them with the same scene description.

How do I keep an AI character’s face from drifting in a long video?

Give the face its own full frame: make the end frame a board with the character’s face filling one 16:9 frame next to the true last frame, tell the model the picture is only a face reference, add a frozen board shot after the scene, and cut that tail off in the edit.

How many panels can a character sheet have?

We tested up to ten panels in one image and recommend staying there: more panels mean less resolution per panel and a higher chance of a broken grid.

3

Examples use external tools; available FlashBoards workflows may differ. Downloads are reference guides, not installed automation.