# Type a long prompt into a wide composer, push the camera in on the caret and let it track the typing

Manual DaVinci Resolve / Fusion construction guide generated from the recipe. It is not a tested .drp.
The accompanying Remotion project (recipe.json) is the executable definition; the numbers below are copied from it.
Neither construction establishes source fidelity: this is an original vector approximation of an inspected editing moment.

## Source and clock
Reference: OpenAI's "Character Consistency with 4o Image Generation" (PFsOUNfBhzI), published 2025-03-25.
Source interval [404, 500) on the 24000/1001 fps master: 96 frames, 4.004000 s. Local frame 0 = source frame 404.
Create a 1920x1080 progressive timeline at 24000/1001 fps and a Fusion composition exactly 96 frames long. Keep integer frames; do not round the frame rate.
Background field: #ffffff. Export silent H.264 yuv420p to match the intended playback container.

## Observation
Hard cut from an interview to a huge light-grey composer filling most of a white frame: a 40px prompt begins typing at the top-left with a caret (~f2), and a row of small tool icons and a model label sit along the bottom. At ~f46 the camera starts to push in to roughly 2.2x, centring on the caret, and settles by ~f58; from then on the framing drifts right so the caret stays right of centre while the sentence continues to type to the end of the interval.

## Mechanism
Caret-driven type-on with a delayed camera push-in that then pans continuously to keep the moving caret in frame.

## Phases (local frames)
- 0: Hard cut to wide composer
- 2: Prompt types with caret
- 46: Camera push-in starts
- 58: Settles at 2.2x, caret right of centre
- 95: Pan keeps tracking the caret

## Layer inventory (absolute 1920x1080 top-left pixels, back to front)
- composer [rect] at (128, 260) size 1790x580 radius 44 fill #f1f1f1
- prompt [text] at (228, 380) text "Could you draw a low-poly fox wizard? Keep it very very simple and give it a tiny lantern" 40px weight 400 #111111 reveal chars frames 2-186
- caret [rect] at (232, 384) size 3x46 fill #111111
    keyframes x: f2=232, f95=1160
- plus [path] at (240, 712) stroke #222222 3px
- globe [ellipse] at (316, 696) size 32x32 stroke #222222 3px
- globe-line [line] at (0, 0) stroke #222222 3px
- globe-line2 [path] at (332, 712) stroke #222222 3px
- bulb [path] at (424, 710) stroke #222222 3px
- frame-icon [path] at (520, 712) stroke #222222 3px
- model [text] at (566, 694) text "v2" 30px weight 400 #222222

## Camera (whole scene, about canvas centre)
- scale: f46=1, f58=2.2 (inOut)
- tx: f46=0, f58=560 (inOut), f95=-160
- ty: f46=0, f58=300 (inOut)

## Construction steps
1. Timeline 1920x1080 at 23.976 fps; Fusion composition 96 frames. Local 0 = master frame 404.
2. White background; composer plate 1790x580 #f1f1f1 at 128,260 with radius 44 and a very soft shadow. Tool icons (plus, globe, bulb, frame) as 3px strokes at y 712 with a 30px model label.
3. Prompt: Text+ 40px #111111 at 228,380; Write On in character mode from frame 2 to 186 (about 0.5 characters per frame) so typing continues past the end of the clip. Add a separate 3x46 caret rectangle whose X runs linearly from 232 (frame 2) to 1100 (frame 95) so it rides the end of the typed text.
4. Camera Transform (centre pivot): Size 1 -> 2.2 and Center offset (0,0) -> (560,300) px over frames 46-58 ease in/out, then keep Size and Y and drive X linearly from 560 to -160 by frame 95 so the caret stays right of centre.
5. Easy mistake: parking the camera after the push. The source keeps panning with the caret; only the vertical position holds.

## Content variants
Default copy:
- prompt: Could you draw a low-poly fox wizard? Keep it very very simple and give it a tiny lantern
- model: v2
Adaptation changes:
- prompt: Can you sketch a paper-cut owl librarian? Make it very very minimal and give it a small lamp
- model: v3

## Limits
Easing names map to Fusion spline shapes: linear = linear, in/out/inOut = ease curves on the same frames, hold = step, spring/overshoot = slight overshoot past the target before settling.
Text reveal frames give the first and last unit; distribute characters/words evenly between them. Cursor click rings last 14 frames.
Vector illustration is an approximation of layout and motion, not the product UI or recovered production assets.
