A real lookbook tells a story across 6-12 frames: same model, evolving looks, a palette that hangs together. AI defaults will give you twelve different models in twelve different lighting setups — useless as a brand asset. This tutorial locks the face, freezes the palette, and rotates only the outfit and pose so the set reads as one shoot instead of twelve random images.
What this covers
A face-locked lookbook workflow built on three primitives: a canonical model portrait, a frozen brand palette, and a rotating outfit/pose slot. We use Midjourney --cref and nano-banana edit chains for face lock, with optional SD + face-lock LoRA for tighter control on photoreal looks.
Who this is for
Indie fashion brands prototyping a season drop without a studio, e-commerce sellers staging six outfits for product pages, stylists pitching mood for client work, and creators building Instagram carousels that need to feel like one shoot.
When to reach for it
Seasonal lookbook concepts, Instagram carousel campaigns, landing-page hero rotations for a clothing line, pitch decks for stylists or brand-builders, and any case where you need 6-12 outfit variants on the same face in under a day.
Before you start
- Pick the model once. Stylized photoreal (slight painterly hand) holds consistency far better than pure photoreal — choose accordingly.
- Lock the brand palette in HEX before any generation: one neutral, one accent, one mood color. Every outfit must live inside it.
- Decide the shoot location/backdrop early — studio cyc, urban rooftop, gallery wall. Backdrop is the second-strongest signal of “one shoot”.
- Pick aspect ratio for the deliverable up front (4:5 for IG, 3:4 for lookbook PDF, 9:16 for Stories) and stay there.
Step by step
- Generate the canonical model portrait. Front-facing, neutral expression, three-quarter body, even soft light. Spend 30-45 minutes on this — the rest of the set rides on it.
- Write the frozen model block: 5-7 visible traits (hair color/length/texture, eyes, skin tone, body type, signature mark). Paste this byte-identical into every outfit prompt.
- Lock the palette in words and HEX: “warm sand, deep olive, ivory; HEX FBE7C6 / 545A2C / F4F2EA”. Add this to every prompt.
- For each outfit, only vary three things: garment description, pose, and one styling accent. Backdrop, lens, and light stay frozen across the set.
- Use Midjourney
--cref [canonical-url] --cw 100for face lock. For nano-banana, paste the canonical image and instruct “keep the same model, change outfit to X”. For SD, use IP-Adapter at 0.8-1.0 plus a face-lock LoRA. - Generate 4-6 takes per outfit. Reject anything where the face drifts, the palette breaks, or the backdrop shifts.
- Final pass: open all six winners in a grid view. Anything that doesn’t read as the same shoot gets re-generated, not edited.
First-run exercise
- Pick one model and three outfits you genuinely want to see (no “portfolio of ten” — start small).
- Generate the canonical, then run the three outfits with face lock and the palette block.
- Tile the four images at thumbnail size. Squint. If any one reads as a different shoot, name the variable that broke and re-run only that outfit.
- Once three hold together, add the next three. Lookbook coherence compounds — fix early breakage before scaling.
Quality check
- Same face across all frames at thumbnail size? Squint test before zoom test.
- Does the palette hold? Sample a pixel from each image — colors should map to your three HEX codes.
- Is the backdrop consistent in lighting direction and color temperature? Mixed warm/cool reads as two shoots.
- Garment details accurate? AI loves to invent buttons and seams; check against your reference garment if you have one.
How to reuse this workflow
- Save the model block + palette block + backdrop block as a
lookbook-template.md. Next season: swap palette and outfits only. - Build a library of “outfit prompt blocks” by category (outerwear, evening, athleisure) so you can compose a season in an hour.
- Keep the canonical portrait in a
models/folder, version-controlled. When the model “ages” or pivots style, version it explicitly. - Re-test the face-lock setting every 6 weeks; model updates can shift
--cwdefaults and your weight may need tuning.
Recommended workflow
Canonical portrait → frozen model + palette + backdrop blocks → six outfit prompts varying only garment/pose/styling → 4-6 takes per outfit → grid review → re-run any frame that breaks coherence → export at deliverable aspect ratio → light retouch pass for skin balance and palette unification.
Common mistakes
- Rephrasing the model description per outfit. “Auburn hair” becomes “ginger” becomes “red” — a different person by outfit four.
- Letting backdrop drift. Six different backdrops looks like six different shoots, even with the same face.
- Palette declared in vibe words only (“earthy”). Always include HEX or named pigments — vibe drifts, HEX does not.
- Trying for hyperreal photoreal. Small face shifts read as a different model; stylized photoreal is more forgiving.
- Mixing Midjourney faces with SD faces in one set. Pick one tool per lookbook and stay there.
- Skipping the grid review. Frame-by-frame everything looks fine; tiled together is where breakage shows.
FAQ
- Can I use a real model’s face?: Not without explicit consent and a license. AI replication of identifiable real people is legally and ethically risky.
- Why does the face still drift at
--cw 100?: The canonical itself may be inconsistent (multiple angles, varied lighting). Regenerate the canonical to a cleaner front-on shot. - Should the model change pose between outfits?: Yes, slightly. Identical poses read as paper-doll dress-up. Vary the pose within one vocabulary (standing, slight lean, hand on hip).
- How many outfits before drift compounds?: Around 8-10 in one session is the safe ceiling. Beyond that, save the canonical and start a new session.
- Do I need to retouch?: For commercial deliverables, yes. A 5-minute pass for skin balance, stray-hair cleanup, and palette unification lifts the result two notches.