Prompting & Workflow9 min read

Luma Uni-1's "Modify vs Create" Rule → A Simple Decision Tree for Cleaner Veo3Gen Iterations

A practical Modify vs Create decision tree (from Luma Uni-1 guidance) adapted to Veo3Gen so you can iterate without drift, with templates + checklist.

TL;DR

Use Modify when you want a new version of the same shot (same identity/composition/moment) and Create when you want a new composition (even if it’s inspired by the input). Luma’s Uni-1 prompting guide frames this as the first decision and it’s the fastest way to prevent “iteration drift” where every revision changes everything. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Below is a simple yes/no decision tree and a worked example you can run shot-by-shot in a Veo3Gen pipeline so your revisions stay controlled instead of turning into random restarts.

Key takeaways

Why most iterations break (it’s scope, not talent)

Most “bad iterations” aren’t because the first prompt was weak. They happen when a revision request quietly asks for two incompatible outcomes:

  • Expectation: “Keep the same shot.”
  • Request: “Change the location, wardrobe, lighting, lens, action, and camera move.”

That’s not a “revision”—it’s a new shot.

Luma’s Uni-1 prompting guide makes this explicit in a section titled “Create vs modify: the first decision”: the first question is whether you are creating something new or changing something that already exists. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Once you force that decision up front, your iteration workflow stops collapsing into drift.

The Uni-1 rule you should steal: “Modify vs Create”

Uni-1’s guide defines the two intents clearly:

The guide even gives a rule-of-thumb mapping:

Two practical implications for video iteration

  1. If you want the same shot identity, you must write like you want preservation (locks + one delta).

  2. If you want new camera language / new blocking / new environment, stop pretending it’s a tweak—treat it as Create and move on faster.

The Modify vs Create decision tree (Veo3Gen-friendly)

Run this before rewriting your prompt.

Decision tree (yes/no)

Q1: Should the next output look like a version of the current shot (same subject identity, same composition, same moment)?

  • Yes → Q2
  • No → CREATE

Q2: Can the request be expressed as 1–2 specific “deltas” without changing the shot’s identity?

  • Yes → Q3
  • No → CREATE

Q3 (sanity check): Does the request imply new blocking or new camera choreography? Examples: “make her run,” “turn it into a drone reveal,” “switch to a wide establishing,” “do a whip-pan.”

  • Yes → CREATE
  • No → MODIFY

What “Modify” means as a writing style

Even if your toolchain doesn’t literally label a button “Modify,” you can behave like it:

What “Create” means (and why it’s not failure)

Create is not “I gave up.” It’s “I’m asking for a new composition, so I’m going to generate a new composition.” That aligns with Uni-1’s definition of Create. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Mid-article CTA: operationalize this with Veo3Gen

If your bottleneck is iteration (not ideation), Veo3Gen is built for running lots of controlled passes on Google’s Veo 3.1 models—using text-to-video and image-to-video, first-and-last-frame control on Veo 3.1, and native synchronized audio (dialogue, SFX, music) generated in a single pass. It also offers three modes—Veo 3.1 Fast, Quality, and Lite—so you can preview cheaply and spend more only when it matters.

When you’re ready, start with your best anchor frame and run “lock list + one delta” iterations through Veo3Gen.

Worked example: from chaotic feedback to clean iterations

Below is a concrete “before/after” you can copy.

Scenario

You generated a vertical 9:16 skincare hero clip. Stakeholder feedback:

“Make it more premium and cinematic, remove the harsh shadows, make the text clearer, and also can we put it on a beach at sunset with a slow zoom?”

This is actually two different intents:

  • “Same shot, higher polish” (Modify)
  • “New scene: beach at sunset + slow zoom” (Create)

Step 1: Split into two tracks

Track Intent Why
Track A Modify It assumes the same shot and asks for polish-level changes (lighting, typography).
Track B Create It asks for a new environment + new camera language (“beach at sunset,” “slow zoom”).

Step 2: Write each as lock list + one delta

Track A (MODIFY): Lighting cleanup

  • LOCK: same framing, same product position/orientation, same background/set, same camera behavior, same overall color palette
  • DELTA: replace harsh shadows with diffused softbox key + gentle fill; smooth highlight roll-off; keep a premium studio look

Track A (MODIFY): Typography clarity

  • LOCK: same shot, same lighting as approved version, same text content, same placement
  • DELTA: increase text size and contrast; clean sans-serif; ensure readability across the full duration

Track B (CREATE): New sunset beach concept

  • NEW SCENE: premium skincare product on reflective marble near a beach at sunset; warm golden-hour lighting; minimal luxury styling
  • CAMERA: slow cinematic push-in

The key move isn’t fancy language—it’s choosing Modify vs Create first.

The “Start → Direct → Refine → Finish” loop (adapted for iteration)

Uni-1’s prompting guide frames a workflow of Start, Direct, Refine, Finish. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Use it as an iteration discipline:

  1. Start: generate options quickly; don’t over-lock.
  2. Direct: pick one anchor that’s closest to the goal; name what matters.
  3. Refine: introduce locks + single deltas; tighten continuity.
  4. Finish: stop changing fundamentals; polish details only.

If your “Refine” step keeps producing new compositions, you’re not refining—you’re accidentally creating.

Writing rules that reduce drift immediately

1) Replace “more cinematic” with explicit intent

“More cinematic” usually bundles multiple changes (lighting, lens, blocking, camera motion). If you want Modify behavior, specify which cinematic attribute changes.

  • Instead of: “more cinematic”
  • Write: “keep framing identical; change lighting to lower-key with soft rim light; add gentle filmic contrast”

2) Don’t rely on negative prompts

Uni-1 guidance says negative prompts aren’t supported and advises describing what you want rather than what you don’t. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Rewrite:

  • “no blur, no distortion” → “sharp focus on subject, clean edges, stable details”

3) Use natural language, not token soup

Dream Machine best practices recommend natural, detailed language. (https://lumalabs.ai/learning-hub/best-practices)

That’s useful here because lock lists are easier to write clearly in plain English.

A copy-paste “Revision Brief” (forces single-delta thinking)

Paste this into Notion/Frame.io/Slack and require it for every change request.

Revision Brief (single shot)

  • Shot ID / link:
  • Goal (1 sentence):

KEEP LOCKED (do not change):

  • Subject identity locked: (yes/no) — details:
  • Background/set locked: (yes/no) — details:
  • Composition/framing locked: (yes/no) — details:
  • Camera motion locked: (yes/no) — details:
  • Wardrobe/props locked: (yes/no) — details:
  • Aspect ratio: (16:9 / 9:16)

CHANGE LIST (max 1–3 deltas): 1. 2. 3.

Audio (if applicable):

  • Dialogue:
  • SFX:
  • Music vibe:

Checklist

FAQ

How do I know if I should Modify or Create?

Use Uni-1’s first decision: are you changing something that already exists (Modify) or creating something new (Create)? If you need the same composition/moment, it’s Modify; if you need a new composition, it’s Create. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

Why do my iterations “drift” even when I change only a few words?

Because small wording changes can imply a different intent (new lighting language, new staging, new camera behavior). Uni-1’s guide explicitly emphasizes intent-first reasoning rather than keyword pattern-matching. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

What should I do if my collaborator asks for multiple big changes at once?

Split the feedback into tracks: one Modify track for polish-level changes (single deltas) and one Create track for new scene/camera requests. Don’t try to force a new composition through “Modify-style” wording.

How do I write revisions if negative prompts don’t work?

Describe what you want to see. Uni-1 guidance says negative prompts aren’t supported and recommends positive description. (https://docs.agents.lumalabs.ai/guides/images/prompt-guide)

How do I keep audio consistent while iterating in Veo3Gen?

Keep audio instructions stable during Modify-style visual tweaks. If you’re changing the script/tone substantially, treat it like a Create request because Veo3Gen generations can include native synchronized audio (dialogue, SFX, music) in a single pass, so major audio changes can cascade.

Ship cleaner iterations with Veo3Gen (closing CTA)

If you use the decision tree + lock list + single delta format, you’ll spend less time “re-rolling” and more time landing precise improvements.

To run that workflow at scale, Veo3Gen provides an affordable way to access Google’s Veo 3.1 video models without Google’s enterprise pricing, with Veo 3.1 Fast/Quality/Lite modes, 720p/1080p/4K outputs (4K on Fast/Quality), 16:9 and 9:16, text-to-video and image-to-video, and first-and-last-frame control on Veo 3.1—plus a developer API for programmatic generation and versioning. New users also get free credits to start, and purchased credits don’t expire.

Apply the tree to your next three revisions, then use Veo3Gen to render the Modify track cheaply (Lite/fast previews) and reserve higher-fidelity runs for the final pass.

Start creating with Veo3Gen

Veo3Gen gives you affordable Veo 3.1 video generation with native audio, up to 4K, and credits that never expire — with free credits to start.

Sources

Limited Time Offer

Try Veo 3 & Veo 3 API for Free

Experience cinematic AI video generation at the industry's lowest price point. No credit card required to start.