What a viewer actually perceives
Show somebody twelve images and ask whether they belong together. They are not examining the nose. They are responding to whether the images look like they were made by one person, in one session, with one intent.
That perception is built from five things, all of which you control completely.
The five constants
1. Light. One direction, one quality, one colour temperature across every frame. Hard sun from the left in all twelve, or soft window light in all twelve. Mixing them is the single strongest signal that a set is not a set.
2. Lens. One focal length and one camera height. A 35mm waist-level look throughout. Mixing a 24mm wide with an 85mm portrait reads as two different shoots regardless of anything else.
3. Palette. Three or four colours that recur, and one that does not appear anywhere. A restriction is more visible than an inclusion: if nothing in the set is pure saturated red, the set acquires a discipline viewers feel without identifying.
4. Crop convention. How much room around the subject, where the horizon sits, whether subjects are centred or offset. Consistency here is what makes a grid of images feel designed.
5. Finish. Grain, contrast curve, colour grade, vignette. Applied identically to every frame as the last step. This is the cheapest of the five and possibly the most effective.
Enforcing them
Write them down as text, in the project folder, and reuse the text:
# system — spring campaign
LIGHT hard sun from camera left, late afternoon, long shadows
LENS 35mm, waist level, slight wide
PALETTE terracotta, sage, bone white, deep brown. No blue.
CROP subject in left third, horizon at 2/3, generous headroom
FINISH colour negative grain, lifted blacks, warm mids, -10 saturationSlots five, six and seven of every prompt come straight from this file. The finish is applied as one saved adjustment set (a GIMP script, an exported curve, or a LUT) over every flattened frame.
The anchor image
Pick or build one frame that embodies the system completely, finish it fully, and get it approved. It then does three jobs:
- Editorially, it is what the client signed off on.
- Technically, it is a style reference for an adapter and a colour-match target for grading.
- Practically, it is the comparison for every later frame. Does frame nine belong next to the anchor? If not, frame nine changes.
The final pass that people skip
When all twelve exist, put them on one screen at the same size, in the order they will be seen. Do not skip this because they each looked right on their own.
You will find: one frame warmer than the rest; one with the light from the wrong side; one cropped tighter; one with more contrast. Every set has them, and they are invisible one at a time and obvious together.
Fix them globally, not individually. A warm frame is one curves adjustment. A frame with different contrast is one curve. These are two-minute corrections at this stage and would have been twenty-minute regenerations earlier.
The deliberate exception
A set does not have to be uniform, and a set where every frame is identical in treatment can be monotonous. What it needs is a system, which can include variation that is itself systematic: three close-ups among nine wides, one dark frame among eleven light ones, a rhythm rather than a drone.
The distinction is between variation you chose and variation that happened. A dark frame placed deliberately at the midpoint of a sequence reads as intent. A dark frame because that generation came out dark reads as a mistake.
So when the final pass finds an outlier, the question is not only “is this different” but “is this different on purpose”. Occasionally the answer is yes and you keep it. Usually the answer is no, and one curves adjustment fixes it.
Making the finish reusable
The fifth constant is the one you can automate, and automating it is worth twenty minutes once.
Build the grade on the anchor image, then save it in a form you can reapply:
- GIMP: export the curve from the Curves dialog as a settings file, and save the grain layer as a reusable XCF you paste in.
- Krita: save the adjustment stack as a layer style, or keep a template document.
- Any tool: export a LUT from the anchor and apply it everywhere. Free LUT generators exist, and a LUT is the most portable form: it will still apply in five years in software that does not exist yet.
Then the finish step on every frame is: flatten, apply LUT, add grain layer, done. Two minutes rather than fifteen, and identical by construction rather than by care.
What to do when the client changes a constant
They will, usually after three frames are finished. “Can it be cooler?”
Because the constants live in one file and the finish lives in one preset, this is a small change: edit the system file, rebuild the preset, reapply to the finished frames. Twenty minutes for the whole set.
Without that structure, it is a per-frame regrade done by eye, which takes an afternoon and produces twelve frames that are each individually cooler and no longer identical to each other. The system file is not administration; it is what makes a late change survivable.
Every lesson here is open. Your progress is recorded once you pass the Vectors, Logos and Things That Get Printed exam.
Check your understanding
Why does holding five visual constants matter more to a set’s coherence than perfect character consistency?
Pick the one you would defend. Your answer stays private.
Stuck on something?Ask Neema, your AI tutor