AI Fantasy Character Design Tutorial: From Sheet to Splash

Build a fantasy character bible in Midjourney V7 and Flux 2: turnaround sheet, environment splash, and action variant on one face (June 2026).

Fantasy character design done in a single prompt gives you a cool image and zero usability. What ships in a pitch deck, a TTRPG sourcebook, or a game proposal is a three-asset bundle: a character sheet (turnaround plus a trait list), an environment splash that proves the character can carry a scene, and an action variant that shows how they move. This tutorial builds all three on the same face, using Midjourney V7’s Omni Reference for ideation and a Flux 2 or SDXL character LoRA for downstream consistency.

TL;DR

Build the canonical four-view sheet first, lock a byte-identical trait block and one signature silhouette element, then generate the splash and action variant with the sheet as an Omni Reference (--oref) image at --ow 200-400. Squint-test all three at thumbnail size; the face that survives the action shot is the one you keep. Past 20-30 approved images, train a LoRA so future scenes need no reference at all. One character takes 3-4 hours including iteration.

The three-asset pipeline

A fantasy character is only useful if it reads as the same person across the assets you actually ship: a turnaround sheet, an environment splash, and an action variant. The discipline behind all three is identical: one canonical face, one frozen trait list, and one signature silhouette element that survives every scene. Build the sheet right and the other two ride on it; skip it and everything downstream drifts.

This pipeline fits TTRPG game-masters and indie publishers building 4-8 campaign characters, narrative game devs prototyping a cast, fantasy authors and webcomic creators building a series bible, illustrators using AI for ideation before final rendering, and pitch-deck builders for animated shorts. The common thread: you need one character to hold across very different stagings, not one pretty image.

Tooling and cost as of June 2026

The big change since older tutorials: Midjourney’s --cref character-reference flag is a V6-era feature and is not supported on V7 or the faster V8.1 model (released April 30, 2026, native 2048px). The replacement is Omni Reference, invoked with --oref plus a weight flag --ow. Omni Reference costs roughly 2x the GPU time of a normal V7 job, so budget your fast hours accordingly.

ToolRole in the pipelineJune 2026 detail
Midjourney V7 / V8.1Ideation, sheet, hero shotsPlans: Basic $10 / Standard $30 / Pro $60 / Mega $120 per month, no free tier. --oref weight --ow range 0-1000, default 100; keep under 400 unless using high --stylize.
Flux 2 Pro LoRAPhotorealistic / semi-realist consistencyStrongest 2026 option for identity that holds across extreme poses; train on 15-30 quality images.
SDXL 2.0 + IP-Adapter / LoRAStylized, painterly, repeatable productionMost mature LoRA tooling in 2026; IP-Adapter Face ID stabilizes the face across poses without training.
Niji 7Anime / manga lookMidjourney’s specialized anime model if your bible is stylized.

Pricing and model versions move fast; figures above are current as of June 2026. Re-check the Midjourney Omni Reference docs before a big run.

Before you start

  • Decide rendering style early: painterly illustration, anime, semi-realist, or dark-fantasy oil. Style choice constrains tooling and trait wording.
  • Sketch a one-paragraph character brief: name, role, background, signature silhouette element (cloak, weapon, mask, glow). The silhouette is your second face.
  • Pick the toolchain to match the style: Midjourney V7 --oref for fast ideation in any style, Flux 2 Pro LoRA for photoreal identity, SDXL 2.0 + IP-Adapter Face ID or a 15-30 image LoRA for tight stylized consistency.
  • Reserve 2-3 hours for the canonical pass. The sheet is the most-reused asset; do not rush it.

Step by step

  1. Generate the character sheet first: front, three-quarter, side, and back views in one image, neutral pose, even lighting, gray studio backdrop. Prompt: character sheet, four views, T-pose, neutral expression, studio gray --ar 16:9.
  2. From the sheet, extract the trait list (5-7 visible items): face, hair, eyes, skin, signature outfit or armor, weapon, distinguishing mark. Paste it verbatim into every downstream prompt.
  3. Identify the signature silhouette element: the one shape readable in a black-on-white silhouette. A hooded cloak, a curved sword across the back, a glowing third eye. Keep this constant.
  4. Generate the environment splash. Same trait block, add scene: [trait block] standing on a cliff overlooking a ruined city at dusk, dramatic side-lighting, painterly. Attach the character sheet as an Omni Reference and set --ow 200.
  5. Generate the action variant. Same trait block, add action and dynamic camera: [trait block] mid-leap with sword drawn, dynamic low angle, motion blur on cloak, dust kicked up. Push the reference up to --ow 300-400 because dynamic poses fight the reference.
  6. Compare all three side by side. Squint test: same person? If the action variant face drifts, raise --ow, lower --stylize, or regenerate.
  7. Save the canonical sheet plus splash plus action variant as character bible v1. Every future scene references this set.

A focused first run

  1. Pick one character you actually need (a campaign NPC, a novel protagonist), not a roster of six.
  2. Generate the four-view sheet first. Spend 60-90 minutes; the rest of the bible rides on this.
  3. Generate one splash and one action variant using the sheet as the Omni Reference. Squint at all three at thumbnail size.
  4. If anything reads as a different character, name the failure (jaw shifted, cloak color drifted, weapon changed) and re-run that one variant with a higher --ow.

Quality check before you save the bible

  • Same face across sheet, splash, and action variant at thumbnail size?
  • Is the signature silhouette element present and readable in all three, especially the action variant?
  • Does the rendering style hold across scenes? Mixing painterly and photoreal mid-bible breaks the read.
  • Do distinguishing marks (scars, glyphs, jewelry) carry through? Image models drop these silently.
  • Does the action variant still read as in-style, or did dynamic posing nudge the model toward its anime defaults?

Reusing and scaling the workflow

  • Save the trait block plus signature silhouette element as a character-bible.md. New scenes only add staging.
  • For a roster of 4-8 characters, run the sheet step for all of them first, then all splashes, then all action variants. Batching keeps the model “warmed up” per character.
  • Once you have 20-30 approved images for a character, train a LoRA (Flux 2 Pro for photoreal, SDXL 2.0 for stylized). Future generations stay consistent with no reference attached.
  • Re-test your --ow weight every 6 weeks; a model update like the V7-to-V8.1 jump can require retuning.

Total time for one character: 3-4 hours including iteration. That front-loaded discipline saves the dozens of hours you would otherwise lose to “this doesn’t look like the same person.”

Common mistakes

  • Skipping the sheet and going straight to a splash. Without a clean canonical, every downstream image drifts.
  • Letting the signature silhouette element wander. The cloak that defined the silhouette in scene 1 is gone by scene 4.
  • Rephrasing the trait block per scene. Lock the wording byte-identical; small synonym swaps compound into a different person.
  • Mixing rendering styles across bible assets. Painterly sheet plus photoreal splash equals two characters.
  • Using a low --ow on extreme action shots. Dynamic poses overwhelm the reference; push the weight up.
  • Building a roster of 8 characters in one session without saving canonicals. You lose the anchors and everything drifts.

FAQ

  • Four views or eight on the sheet?: Four (front, 3/4, side, back) is the sweet spot. Eight-view sheets confuse most models; they smear faces across the row.
  • Is --cref still the way to do this in Midjourney?: No. --cref is a V6-era flag and is not supported on V7 or V8.1. Use Omni Reference (--oref with --ow) instead. The web interface shows it as the Omni Strength slider.
  • What --ow weight should I use?: Start at 200 for calm scenes and 300-400 for extreme action. The range is 0-1000 with a default of 100; values above 400 get unpredictable unless you are also using a very high --stylize.
  • Best tool for fantasy consistency in 2026?: Midjourney V7 --oref for ideation. For production, Flux 2 Pro LoRA holds identity best for photoreal and semi-realist styles; SDXL 2.0 with IP-Adapter Face ID or a trained LoRA is the most mature choice for painterly and stylized work.
  • Can I generate the character holding different weapons?: Yes, but treat the weapon as a trait. If it changes, the silhouette read changes. Document weapon variants in the bible.
  • When is training a LoRA worth it?: Past 20-30 approved images of one character. Below that, an Omni Reference image is faster than collecting a clean training set.
  • Why does the face drift in the action variant?: Dynamic poses push the model toward its defaults. Raise --ow, drop --stylize, or generate the action variant as image-to-image from a posed version of the sheet.

Tags: #Midjourney #sdxl #Fantasy #character-design #Tutorial