Making an AI Short Drama Solo, Part 4: Keeping Characters Consistent, from 2D Stills to 3D Widescreen
In short: Don't generate each shot from scratch. Build a few fixed assets (one look per character, one empty set per location), compose them into a first frame, check that frame hard, and only then let an audio-driven video model make it move.
Series: Making an AI short drama, solo
- Why I started, and how an episode comes together
- Script and storyboard: one joke per minute
- Voice first, picture second: dialogue and lip sync
- Keeping characters consistent: from 2D stills to 3D widescreen (this post)
- Editing, quality checks and publishing
- Claude Code as my production assistant
The problem nobody warns you about
Ask an image model for "a tired programmer at his desk" and you get a great picture. Ask again for the next shot and you get a different programmer, at a different desk, in a different shirt. One good shot is easy. Thirty shots where the same man sits in the same chair in the same room is the actual job.
Almost every visual upgrade the show went through was a fight with that one problem.
Three looks, three problems
Moving comics
The first episodes were still images with slow pans and zooms over them, plus voice and subtitles. Cheap and fast, and good enough to find out whether the jokes worked. But a face drifted a little from shot to shot, and viewers noticed that the "main character" kept getting a new nose.
Partly real video
Next I turned some of the stills into short generated clips. Things moved now, which helped a lot. It also created new failures: people who were never asked for walked into the background, a coworker got a twin, and the office changed layout every time the camera angle changed.
3D widescreen
Today the show is a warm 3D animated look in 16:9 widescreen. That move wasn't about style for its own sake. A stylized 3D look hides small imperfections better than a realistic one, and widescreen lets two characters share a frame with the room still visible around them. More importantly, by then I had stopped asking the model to invent each shot. That was the real fix.
The method: build assets once, compose every shot
Each shot now goes through four steps.
- Character look. Every character gets one full-body reference image on a plain neutral background. The description is fixed down to the boring details: age, build, hair, the color of every piece of clothing, and one signature prop. I approve it once, and it is reused for the whole series. Nobody re-describes a character inside a single episode.
- Empty set. Every location gets an empty set image with no people in it at all.
- Composited first frame. An image-editing model places the characters from step 1 into the set from step 2. This is the opening frame of the shot.
- Audio-driven video. The first frame plus that shot's voice track go to a video model, which animates the scene and moves the mouth to the line.
Each step has its own traps, so here is what I learned in each.
Empty sets that stay empty
If the style description for a set mentions characters at all, the model fills the empty room with people. So sets get environment-only wording, described as a still life of an empty room.
Layout is written as relationships, not directions. I used to write which wall faced north. The model has no idea where north is, so every new camera angle re-decided it, and desks that faced the window in one shot sat sideways in the next. Now I write things like "the desks run parallel to the window wall," which holds from any angle.
Every wall that will be on camera gets a landmark: a door, a window, a whiteboard. Leave a wall blank and the model "helpfully" fills it, usually with a bookshelf, and a different bookshelf each time.
For any scene with more than one person, I also write a small blocking sheet before generating anything: a floor plan, who sits where, which way each person faces, and where the cameras are. It sounds like overkill for a one-minute sketch. It isn't. Two characters swapping seats between shots is one of the fastest ways to lose a viewer.
Composites: one at a time, and from one master
Put two characters into a set in one go and the model tends to blend them, for example giving both the same outfit. So they go in one at a time: first the left person, then the right person added to that result.
Each scene gets one master wide shot, plus at most a reverse angle. Close-ups are cut from the master instead of generated separately, so the background behind a character is literally the same room. The same person from the same angle reuses the same first frame for every line they speak there.
Composites tend to come out too tight, with faces filling the screen. I pull the framing back so the room is visible around them. Seated characters are composited from a seated reference, because a standing reference behind a desk turns into half a person. And every frame gets a head-room check, because a cropped scalp is hard to un-see.
This is also where lighting and skin tone get fixed. Whatever light the first frame has, the whole shot keeps. Eventually I picked one episode whose color I loved and made its lighting the standard for every episode after it.
Video that follows the voice
The voice is recorded first (that was the subject of part 3), and the video model is driven by that audio, so the mouth follows the real line. Long exchanges are split into short segments chained together: each new segment starts from the exact frame where the previous one gets cut in the edit, so motion carries over instead of jumping.
The first-frame gate
Images are cheap. Video is slow and expensive. So the last checkpoint before video is the most important one in the whole pipeline. Every first frame goes onto one sheet, and each one is zoomed in and checked:
- People sitting are actually on the seat, not hovering in a half squat.
- Every hand rests on something: a lap, the desk, an armrest. No hands grabbing air.
- People in a conversation are looking at each other, not past each other.
- No extra person, including a blurry back of a head in a "single" shot.
- No fake text or made-up logos.
- No head cut off by the top of the frame.
Some of this is automated: a machine check compares each frame against the blocking sheet and flags anyone in the wrong seat or facing the wrong way. One rule matters more than any single check: whatever generated the image never grades its own work. Early on, a self-review once marked every seat correct while two characters were clearly swapped.
Next up
Part 5 is about what happens after the shots exist: editing, quality checks and publishing. How the episode gets cut together, what machines can and can't catch, and why I always watch the whole thing myself before it goes out.
Want to see the finished episodes? They are all on our videos page.
Watch the series