PIPE_ART_2026-07-29.md

pipelines/PIPE_ART_2026-07-29.md

PIPE_ART — Concept art / illustration / texture-material generation

Lane owner: the realm choice boards (docs/pipeline_review/REALM_ANALYSIS_ART_PIPELINE_2026-07-27.md), the Lane-P

paintover, the reference-built rule, and the texture/material half of DR-2's substrate_material_ref_path row.

Closes runbook D-3 ("the image-gen model — no brief names one"; §8 item 5 scheduled the roster to benchmark day).

Every model below was fetched live on 2026-07-29. VERIFIED = primary source fetched and quotable.

ESTIMATE = my arithmetic from a published param count, labelled as such. Nothing here is adopted on a name alone.

---

1. THE VERIFIED STACK

Licence law applied: ART_PIPELINE §2.3 binds this lane verbatim — *any* image model whose weights carry a MAU cap,

territory exclusion, revenue ceiling, or non-commercial clause is disqualified from producing anything that reaches

an art bible; such tools are previz_only, "usable at will internally, never load-bearing." That is a **rule keyed on a

licence document**, not a judgement call, so the tiering below is mechanical.

Tier SHIPPABLE — unrestricted-by-default, may reach an art bible

JobPickLicenceEvidence
Text-to-image PRIMARYHiDream-O1-Image-Dev — 8B pixel-native UiT (no VAE, no disjoint text encoder), T2I + instruction-edit + multi-reference subject-driven personalization + skeleton/layout conditioning, up to 2048², rel. 2026-05-08, 28 stepsMIT — *"The code in this repository and the HiDream-O1-Image models are licensed under MIT License"*HF card · native ComfyUI PR #13817 · Comfy tutorial
T2I co-primary (realism / text-in-image)Qwen-Image-2512 — 20B MMDiT, Dec-2025 refresh of the Aug-2025 base; the update targets exactly the "AI-generated look"Apache-2.0HF · fp8 file 20.4 GB vs bf16 40.9 GB, tested RTX 4090D 24GB @86% (Comfy docs)
T2I fast-iteration / 4th wildcard optionZ-Image-Turbo — 6B, 8 NFE, sub-second, *"fits comfortably within 16G VRAM"*Apache-2.0HF
Paintover / edit (Lane P default)HiDream-O1 edit mode — same checkpoint, HiDreamO1ReferenceImages node. One model, two lanes.MITas above
Paintover fallback / multi-ref identityQwen-Image-Edit-2511 — multi-image fusion, identity preservation, built-in lighting/viewpoint LoRAsApache-2.0HF
Human-in-loop canvasKrita AI Diffusion — live painting, inpaint/outpaint, ComfyUI backend, WindowsGPL-3.0 (tool only — no output taint)repo
Structure conditioningQwen-Image-ControlNet-Union (canny/softedge/depth/pose) · Z-Image-Turbo-Fun-Controlnet-Union (canny/HED/depth/pose/MLSD)both Apache-2.0InstantX · alibaba-pai
Depth extraction from Lane-R platesDepth-Anything-3Apache-2.0 — ⚠ but Giant + Nested variants are CC BY-NC 4.0. Pin the Apache variants by filenamerepo/LICENSE
Upscale / finishSeedVR2 (ByteDance-Seed) 3B / 7B / 7B-sharp — FP16/FP8/INT8/MXFP8/NVFP4 (Blackwell-native)Apache-2.0Comfy-Org/SeedVR2
Upscale fallbackReal-ESRGANBSD-3-Clauserepo
AccelerationNunchaku / SVDQuant v1.2.0 (2026-01-12) — NVFP4 on RTX 5090, ~3× over BF16, 3.6× memory cut; supports FLUX.1 family, Qwen-Image + Qwen-Image-Edit, Z-Image-Turbo, SANA, PixArt-ΣApache-2.0repo
PBR channel derivationMaterial Maker (node-based procedural, Godot, Windows) primary; Materialize (image→maps) fallbackMIT / GPL-3.0Material Maker · Materialize
Legacy style-LoRA benchSDXL 1.0 — *"Licensor claims no rights in the Output You generate"*; commercial permitted subject to Attachment A use-based restrictionsCreativeML Open RAIL++-MLICENSE.md
Only shippable FLUXFLUX.2-klein-4B — 4B, ~13GB VRAM, runs 3090/4070-class. (It is also the Puget comfy_ui app-pack's bundled image option — the pack's default is licence-clean.)Apache-2.0HF
Text encoders (the chain matters)gemma4_e4b_it_fp8_scaled (HiDream) · qwen_2.5_vl_7b_fp8_scaled (Qwen-Image) · qwen_3_4b (Z-Image)Apache-2.0 each — ⚠ Gemma-4's HF tag says apache-2.0 but links a Google-hosted "Gemma 4 license" page; resolve at pre-flightgemma-4-e4b-it

Tier PREVIZ_ONLY — internal thinking only, previz_only rights value, can never promote

says outputs *"can be used for … commercial purposes as described in"* that licence — but the weights are NC and

the licence text itself returned HTTP 401 to an anonymous fetch, i.e. the operative document is gated. An

output-carve-out inside a non-commercial weights licence is precisely the ambiguity §2.3 refuses in the shipped path.

(FLUX.2-dev · FLUX.1-dev)

Commercial tiers exist and are self-serve (Builder 10K img/mo · Platform 100K · Professional · Enterprise —

bfl.ai/pricing/licensing), so this is *purchasable*, not *blocked*. See §5.

United States dollars … trailing twelve-month basis."* A revenue ceiling — §2.3's named disqualifier, verbatim.

(licensing · tech report)

Tier EXCLUDED

Copyleft. Q3 §1.2's finding re-confirmed today: the commercially-clean AI PBR-estimation gap is STILL OPEN.**

That is why §1's PBR row is deterministic tools, not a model.

share-alike; it would silently taint every plate it touched. (OpenModelDB)

Rule: the lane pins an upscale-weights allowlist; models/upscale_models/ is never trusted by default.

FLUX/Qwen/HiDream support (repo). **The brief's "IP-Adapter consistency

tooling" is a 2024 answer.** The 2026 mechanism is native: HiDream-O1 multi-reference personalization, Qwen-Edit-2511

multi-image identity, and a per-realm style LoRA. IP-Adapter stays valid only on the SDXL bench lane.

Mage-Flow, Boogu-Image, PixelDiT, Bernini-R, Lens, void-model, SCAIL-2, JoyAI-Image-Edit,

Anima-LLLite, Ideogram-4. Named here so they are re-checked at benchmark day, adopted by none.

diffusion models**, not image models (ardy, kimodo);

ARDY's weights are NVIDIA Open Model License (commercial-permitted) — hand them to the animation lane, not here.

Cosmos 3 is the worldgen lane (tech_research/COSMOS3_DEEP_DIVE.md). ACE-Step / "XL SFT" / "Excel Bass" are audio.

VRAM / RAM budget + scheduling class — the concurrency law

ConfigPeak VRAMBasis
HiDream-O1-Dev fp8 + gemma4 fp8 @2048²~14-16GBESTIMATE (8B+4B @fp8 + activations)
Qwen-Image-2512 fp8 + Qwen2.5-VL-7B fp8 @1328²~26-28GB20.4GB file VERIFIED; 86%-of-24GB observation VERIFIED
Z-Image-Turbo bf16~14GB16GB figure VERIFIED
SeedVR2-3B NVFP4~3-4GBESTIMATE
LoRA train (HiDream rank-64)~20-24GBESTIMATE

RAM: hold 32-48GB free for text-encoder CPU offload. **Scheduling class: WINDOWED (attended) for boards ·

OVERNIGHT (unattended) for variant sweeps, upscales, LoRA training · NEVER always-on.** The runbook's binding

arithmetic governs: *"29GB of 32GB is the tight fit the whole hardware decision turns on … heavy lanes run

sequentially, not concurrently"* — and an OOM is HARDWARE_DECISION upgrade trigger #1, so a co-residency OOM

would be a false trigger. **Hard rule: this lane fully unloads (ComfyUI --reserve-vram / free-memory) before any

3D-gen run, any UE cook, or any resident 14B.** Qwen-Image-2512 at 28GB is single-tenant by itself.

---

2. INSTALL PLAN

Environment lane (resolves D-1 for this pipeline): option (b) — ComfyUI on WINDOWS, native. Not WSL2.

Reasoning: every model in §1 is diffusers/ComfyUI-native with first-class Windows support; the WSL2 lane exists for

TRELLIS.2's Linux-only official path (3D geometry, a different pipeline). Krita AI Diffusion is a Windows app

driving a ComfyUI backend — routing a live-painting loop through a WSL2 vhdx adds an I/O hop at the worst place.

The Puget comfy_ui app-pack stays the WSL2/3D lane's asset; this lane does not need it.

Disk placement, per the RULED layout. ComfyUI + models/D: (slot 3, Gen4) with HF_HOME/HUGGINGFACE_HUB_CACHE

already pointed there (Stage 1.5). Lane-R reference corpus (the owned National Geographic run) → E: (slot 4, 8TB SATA)

— the runbook's own Stage-1.4 table already assigns it there. Board outputs → E:\art\boards\<realm>\<board_id>\.

Nothing binary enters the canon repo; promoted plates enter as manifest rows + hashes only. C:/Gen5 stays UE-only.

Install ORDER — day one is "install the lane and prove one generation runs," nothing more (~90 min):

1. ComfyUI (NVIDIA portable or Desktop) → verify the bundled torch CUDA build; README currently ships cu13.0 portable,

and D-2 says avoid 13.x on this machine — pin a cu128 wheel if the default is 13.x. ComfyUI is GPL-3.0 (tool only).

2. ComfyUI-Manager.

3. Z-Image-Turbo first light — smallest, fastest, Apache: z_image_turbo_bf16 + qwen_3_4b + ae. One generation, tagged previz, written outside every asset path.

4. HiDream-O1-Image-Dev (the real primary): hidream_o1_image_dev_fp8_scaled.safetensors + gemma4_e4b_it_fp8_scaled.safetensors + hidream_o1_dev_lora_rank_64_bf16.

5. Depth-Anything-3 (Apache variants only — exclude Giant/Nested by filename) + Qwen-Image-ControlNet-Union.

6. SeedVR2 (3B NVFP4 first — proves the Blackwell path end to end).

7. Krita + krita-ai-diffusion, pointed at the local ComfyUI.

8. Deferred to benchmark day: Nunchaku wheel, Qwen-Image-2512 + Qwen-Image-Edit-2511, FLUX.2-klein-4B, SDXL, Material Maker.

Thursday-night download list (sizes: 20.4 GB is VERIFIED from docs.comfy.org; the rest are ESTIMATES from param counts — do not quote them as facts):

FileGB
hidream_o1_image_dev_fp8_scaled.safetensors~8-9EST
gemma4_e4b_it_fp8_scaled.safetensors~4-5EST
hidream_o1_dev_lora_rank_64_bf16.safetensors<1EST
z_image_turbo_bf16 + qwen_3_4b + ae~12 + ~8 + 0.3EST
Depth-Anything-3 (Apache Large)~1-2EST
SeedVR2 3B NVFP4~3EST
Day-one subtotal≈ 35-40
qwen_image_fp8_e4m3fn.safetensors20.4VERIFIED
qwen_2.5_vl_7b_fp8_scaled + Qwen-Edit-2511 fp8~8 + ~20EST
ControlNet-Union (Qwen + Z-Image)~5EST
FLUX.2-klein-4B~9EST
Full roster≈ 95-105lands on D:

---

3. THE INTEGRATION CONTRACT

Two artifact classes leave this lane, and they enter canon by different doors:

(a) Board plates never enter DR-2. They are decision surfaces. They land on E: with a board manifest, each image

carrying exactly one ART_PIPELINE §3.3 rights value (own_capture · museum_open_access · public_domain ·

licensed · generated_local · previz_only). previz_only can never promote — that is the mechanical form of the

§2.3 constraint "which nothing currently enforces."

(b) The ratified art bible is the promoted output, and its declared consumer already exists: TD_ASSETGEN §4.1

mesh_tags.style ("concept decides; geometry executes"), plus the realm's palette_law / silhouette_law /

impossible_architecture_budget / signature_phenomenon / decay_law values that DR-2 §6-D D2 routes to the

Wave-2 T0_Realm_Ruleset_Registry mint. An art-bible field that cannot become a T0_Environment_Grammar_Registry row

(physical_properties_array / tactical_affordance_class) is a field describing scenery — §9's third finding, enforced.

Where this lane actually writes DR-2 rows. Textures/materials are a DR-2 asset class in their own right:

substrate_material_ref_path/Game/Materials/<class>/M_<id>, path takeover (ratified item 3, the default), riding

the five-state machine pending → in_progress → complete with rejected / regeneration_required as the off-ramps.

Three things this lane owes the contract:

SHIPPABLE to PREVIZ_ONLY fire regeneration_required automatically through the existing regeneration_trigger,

instead of tainted art shipping because nobody re-read a licence. It is DR-2 §6.3's self-enforcement reused for licence drift.

capture-rights / authenticity audit signs off. The rights value above is what that gate reads.

make the fairy realm's board a four-panel board, the fourth generating from the Prologue-height palette (the F-9 rider).

Formats. 16-bit PNG for plates and albedo; EXR for lighting studies; PNG/TGA for texture import via the idempotent

replace_existing=True importer shape. No JPEG in the promotable path — JPEG-artifact removal is the exact use case

that pulls people toward the non-commercial upscaler; don't create the problem.

THE QA GATE — how the image/feel critics attach to DR-2 rows. The critics already have a home

(harness/read_captures.py + harness/qa/capture_expectations.json, verdict shape GO / GO-WITH-FIXES / NO-GO from

normalize-doc, opus tier per the model-seat ruling). This lane adds one deterministic sibling and reuses four critics:

highest-value tooth: *every Panel A image on a living-tradition realm carries a rights value in the reference set* —

the costume rule made mechanical, keyed on the Zone Catalog care_tier column, so a person never has to remember

which of the two board rules applies. Copy READCAP's --self-test must-fire/must-not-fire fixtures + exit-3 exactly:

a tooth without a failing fixture is not armed.

insensitivity findings, per the delegated-care ruling), physics-coherence (name the altered law · the vril mechanism ·

the consequences · the EGR row), AAAAA de-slop (the unlabeled-relabel test — if Panel A's plates can be reassigned

to a different realm, the board failed), reveal-discipline (registers with check_grand_sage_silence.py +

check_reveal_discipline.py + reveal_discipline_baseline.json, never a parallel check).

sign-off in the QA bug-ledger with director_in_loop_required. So: critic NO-GOgeneration_status=rejected,

the id stays on its placeholder. GO-WITH-FIXES → stays in_progress. GO + director sign-offcomplete

permitted; "live" remains the observable fact that the resolver stopped returning the placeholder.

the critic must state what the place looked like BEFORE; if it cannot, decay_law has failed on the art side even

where the data passes. Realm surfaces grade against QA_WATCHING_PROGRAM.md §4.4's realm band, never the region floor (6.7).

---

4. THE AUTONOMY CONTRACT

Dispatch is a row set, not a sentence. The director never hand-writes a prompt. A work order is a query over the

realm/zone rows for generation_tier='realm' (the explicit ten-row write of 6.4 — neither node_kind nor page_status

is a clean realm selector), care_tier, decay_bearing, decay_stage, joined to the art-hook family. The prompt

composer reads the row. Rows whose care_tier is in the living-tradition set can never dispatch to Lane G — the

composer refuses and emits a Lane-R plate request instead. Mechanical refusal on a column is the mitigation §8 item 3

names for the two-rule-board decay problem, and it is what extends the never-raw-generate rule from architecture to

iconographic systems (the Duat's registers, Naraka's strata, Xibalba's houses, Meru's axis).

The model promote/demote gate. Three states — SHIPPABLE (MIT / Apache-2.0 / BSD / OpenRAIL++), PREVIZ_ONLY

(any revenue, MAU, territory, or NC clause), EXCLUDED (research-only or unverifiable). **Movement between states

requires a re-fetched licence document, never a memory, a blog post, or a model card summary** — today's fetch found

the FLUX licence text itself behind a 401, which is exactly why the rule is "fetch the operative document." Demotion

fires regeneration_required on every id whose prompt hash carries that licence token (§3).

Unattended (overnight, safe): variant sweeps on a fixed seed ladder, upscale batches, per-realm style-LoRA training,

tiling-texture sets, deterministic read_boards.py runs. All output written previz-tagged. **No promotion ever

happens unattended.**

Attended (windowed, director present): the board itself, Panel A composition for any living-tradition realm, the

first run of any new model, and the Krita paintover loop.

Josh sees only the board's pick line. Under THE JOSH GATE he plays nothing before the AAAAA slice — but a board is a

*decision surface*, not a playtest, so boards are the one visual artifact that legitimately reaches him early.

---

5. JOSH-MINIMUM

1. A HuggingFace account + token, and accepting per-repo terms. Several repos are gated: anonymous fetches of both

FLUX.2-dev/LICENSE.md and the krea org returned HTTP 401 today. Clicking "accept" is an account action.

2. Neither commercial licence, is my recommendation — but only he can sign either. BFL self-hosted tiers are

self-serve and real (Builder 10K img/mo → Enterprise); Krea needs an Enterprise licence above $1M revenue. The MIT/

Apache tier (HiDream-O1 MIT, Qwen Apache, Z-Image Apache) is genuinely competitive now, and the licence-drift

surveillance cost is the expensive part, not the sticker. **Recommendation: buy neither; revisit only if benchmark day

shows a quality gap the MIT tier cannot close.**

3. The Puget burn-in / benchmark sheet ask (already a runbook QC-phase Josh action). This is a sustained-load lane

and that sheet is the only pre-arrival thermal/power baseline for this exact machine.

4. Lane-R rights. The National Geographic run is Josh's physical property, not a publication licence: NG plates are

internal underlay only and never promote unless a specific grant makes them licensed-class. own_capture — his own

photography — is the cleanest class available and only he can create it. Also his: any per-site commercial-capture

permission, which ART_PIPELINE §3.3 correctly makes a second field, not a substitute for image-level rights.

5. Board delivery medium (§8 item 1, still unruled). Recommendation: a published page for eight realms; **local files

for the fairy realm**, the most spoiler-dense artifact the project will produce. It is a publishing decision, so his nod.

---

6. BENCHMARK-DAY QUESTIONS

1. Does Nunchaku NVFP4 hold at 2048² on Qwen-Image-2512 and Z-Image — and does it support HiDream-O1 by then? It is

not on today's supported list, so the primary currently has no 4-bit path and runs on Comfy-Org's fp8/mxfp8.

2. Measured peak VRAM + wall-clock per primary at 1328² and 2048², replacing every ESTIMATE above. The runbook's own

VRAM table already carries three rows flagged UNSOURCED ESTIMATE; this lane must not add more.

3. The de-slop critic's unlabeled-relabel test used as a MODEL selector — HiDream-O1 vs Qwen-Image-2512 vs

Z-Image-Turbo on one realm brief. Whichever model's plates are *least* interchangeable wins. That is the sharpest

available test and it costs one afternoon.

4. Per-realm style LoRA vs multi-reference personalization — which actually holds a nine-plate board series together?

Cheaper answer wins; the loser is dropped, not kept "just in case."

RULED 2026-08-04 (seat B1) — see ART_CONSISTENCY_MECHANISM_RULING_2026-08-04.md.

The either/or was rejected as a FALSE FORK, on evidence rather than taste: four prompt-only

REGEN-BELT rungs (268 plates generated and LOOKED AT) left 47 rows failing, and a classifier over

those rows' own LOOK notes splits them into 38 LOOK failures and 9 IDENTITY failures. The two

mechanisms answer different failure modes, so neither is dropped — the SCOPE is. **Per-realm style

LoRA is the DEFAULT** and the cheaper mechanism (one training run amortized across every future

plate in the region, versus a reference selected, verified and carried per row forever);

reference conditioning is RETAINED but demoted from "the consistency mechanism" to a per-row

remedy for identity/morphology rows, which is the only place its per-row cost is earned. The

Flores region LoRA is trained on the region's own landed plates and style_lora_hash — one of the

eleven closed payload keys, empty on every row until now — is load-bearing.

5. The GPU-free licence re-read, before the first GPU hour (§8 item 5's ruled scheduling): HiDream-O1 MIT · Qwen

Apache · Z-Image Apache · SeedVR2 Apache · Depth-Anything-3 per-variant (Giant/Nested are NC) · **Gemma-4's

apache-2.0-tag-vs-Gemma-licence-link discrepancy** (unresolved, and the whole HiDream text-encoder chain depends on it)

· every upscale weight individually against the allowlist.

6. Does the paintover lane measurably inherit structure? Test: depth-map IoU between the Lane-R underlay and the

Lane-P output. "The enhanced option is a superset of the accurate one *by construction*" is the doctrine's load-bearing

claim; if paintovers drift structurally it is a promise, not a property, and Panel B needs a tighter ControlNet weight.

7. Is the commercially-clean AI PBR gap still open? Re-check CHORD's licence and any SIGGRAPH-2026 successor. If it

is still closed, record Material Maker (MIT) as the ruled answer rather than leaving the slot as a hope.

7. COMPARATOR-PIPELINE ADDENDUM — ABILITY-VFX AUTHORING STRUCTURE (2026-08-05)

APPEND-ONLY addendum under the pipe-dossiers-bind law, from the 2026-08-05 comparator-pipeline research

(Josh: "what about their pipelines?"). **It lands HERE, and that placement is itself a finding: there is

no PIPE_VFX dossier.** The VFX lane is the one media lane whose law lives scattered across

ASSET_DROPIN_CONTRACT.md §2/§7, D1-27_ELEMENT_VISUAL_LAW.md and ENGINE_OPTIMIZATION_DOCTRINE.md

§5.4 D1/D2/D9, with no dossier of its own — so the pipe-dossiers-bind law has nothing to bind the wave-7

VFX lane to. This section is the seed of that dossier and sits in PIPE_ART because the source-asset half

of VFX (flipbooks, volume textures, baked simulation) is texture/material generation, which is this

lane's job. **Its primary purpose is to test wave 7's Niagara-per-element-family approach against the

only teams who have published on the same problem.** Sources are trade-press features, not first-party

talks — reliable on tooling, to be read as reported on numbers. Nothing here is repo canon until landed.

7.1 THE HEADLINE — wave 7's per-family approach is VALIDATED, with a scope correction

Our ruled position (ASSET_DROPIN_CONTRACT §7, register v1.4 entry 100) is that the cue-parameter set is

closed at (element, presentation_tier_ref, status class, counter class, phase) so that **one Niagara

system per family branches on parameters instead of forty systems existing** — while sizing for the FULL

248 live / 372 clamp authored variant key space, because *parametric interpolation is permitted only

INSIDE an authored tier's polish pass, never instead of one*.

The comparator evidence says both halves of that are right, and it says WHY:

Niagara's user-parameter system lets artists adjust particle count, velocity and scale on a single base

effect rather than maintaining separate asset files per minor variation, which substantially reduced

the total effect file count versus the predecessor title.

Source — https://cgworld.jp/article/202408-ff7reb-04.html

BACKGROUND class (distributed "life spots"), not hero battle magic. Nothing in the public record says

Square replaced authored hero-spell assets with parameter variants. So the documented win is on the

ambient/variant tier — which is precisely where our ruling already confines it. Anyone arguing the

parameter branch should stand in for authored per-tier variants is arguing past the only public

evidence there is. Our 248/372 authored sizing survives this research intact.

graph-based, data-driven GPU particle system built specifically so one shared system could support a

wide variety of games, with the WORKFLOW layer (graph, data) separated from the TECHNOLOGY layer

(shader generation, memory management, sorting, rendering).

Source — https://www.ea.com/frostbite/news/frostbite-gpu-emitter-graph-system

Verdict: ADOPT-AND-CONTINUE. Wave 7 proceeds as chartered. The two corrections it should absorb are

§7.2 (the missing source-asset library) and §7.3 (luminance as its own axis).

7.2 The missing layer — a baked SOURCE-ASSET library under the family system. ADOPT.

FF7 Remake's spectacle did not come from more emitters. It came from a baked source library:

Animation Textures; Arnold pre-rendered sky/environment spheres; Maya and Houdini were the source

tools, with a heavily customised UE4 Cascade as the runtime.

emissive, opacity/mask, normal and occlusion channels.

64³ VolumeTexture, with three further octaves synthesised at runtime for animation.

a layer floating on top; the team's stated aim was that a magical effect appear to physically exist in

the scene's space.

Source — https://cgworld.jp/feature/202012-ffvll-03.html

(Named: Shintaro Takai, graphics & VFX director; Mizuki Tsunoda and Mitsuharu Yoshida,

lead VFX artists — a deliberately small team against a very large output.)

power-of-two resolution constraint disappears and frame counts become flexible; Houdini gained a new

exporter to emit it. Generic smoke and explosion elements were prepared at 4K and 8K.

Source — https://cgworld.jp/article/202408-ff7reb-04.html

What it teaches OURS. Wave 7's charter names the family SYSTEM and the four-beat grammar; it does not

name the MATERIAL the system plays. Without a baked source library, a per-family Niagara system defaults

to procedural noise and reads generic — the exact failure the de-slop critic catches in the image lane.

ADOPTED AND ROUTED: a VFX source-asset library becomes a declared rung of this lane — flipbooks and

baked sim carrying the emissive / opacity / normal / occlusion channel set, plus volume textures for

aura and field beats, with element identity living in the SOURCE asset and the family system choosing

among sources and modulating tint, scale, velocity and count. That is what makes "one system per family"

produce 31 distinguishable elements instead of one recoloured effect. This lane already owns texture and

material generation; the source library is the same job pointed at effects.

7.3 Separate LUMINANCE from COLOR — ADOPT directly into the tier ladder

Square's customisations to the Cascade editor for FF7R included: a hierarchical emitter panel; direct

texture and culling overrides that bypass material parameter collections; UV offset and scale controls

brought into the editor; an independent luminance parameter separated from colour; and a timeline

visualisation for planning an effect's structure.

Source — https://cgworld.jp/feature/202012-ffvll-03.html

ADOPTED AND ROUTED — this is the sharpest single transfer in researcher-B's whole return. Our D1-27

element visual law already fixes a dominant channel per base element, and the tier ladder escalates a

cast across eight rungs. If intensity is not its own axis, per-tier escalation drifts the HUE and the

element loses identity at high tiers — the failure is invisible at authoring time and obvious in play.

Separating luminance from colour makes tier escalation a luminance-and-scale delta on a HELD element

hue. Route: docs/element_visual_law.json payload (a per-element intensity axis alongside the dominant

channel) and the wave-7 family system's parameter surface. It changes no ruled row and costs nothing now.

Second-order teach from the same fact: Square spent real engineering on the particle EDITOR itself

before authoring volume. A solo factory's equivalent is not editor source changes — it is a Niagara

MODULE library plus a data-asset-driven parameter surface, built once, so authoring an element family is

filling a data asset rather than building a system. ADOPTED as the wave-7 build order: modules and

data surface first, then the 31 families.

7.4 Two authoring lanes, split by whether the camera is fixed — VALIDATES ours

FF7R divided VFX work into four streams: battle effects, environment effects, cinematics, and UI /

minigames. Battle effects were built as reusable assets called during gameplay; cinematic effects were

authored for a specific camera inside a fixed shot. Cutscene coordinate systems were deliberately left

non-fixed so effects adapted to variable player progression.

Source — https://cgworld.jp/feature/202012-ffvll-03.html

VALIDATES our existing split between the gameplay cue family and cinematic/presentation effects, and

adds the reason it must be a split at authoring time, not a later optimisation: a reusable gameplay asset

and a camera-specific one are different artifacts with different acceptance tests.

7.5 A shared proving map and looping parameter preview — ADOPT

FF7R's VFX and lighting teams synchronised on a shared lightweight test map (built from simple street

assets) before full integration, and extended Sequencer for non-linear effect preview with parameter

looping during refinement.

Source — https://cgworld.jp/feature/202012-ffvll-03.html

ADOPTED AND ROUTED: one proving map in our project where the cue family is driven by a looping

parameter sweep across element and tier — the natural home for wave 7's visual-presence tooth, and the

same map PIPE_ANIMATION §7.3 wants for motion-with-audio review. One map, both lanes, one screenshot

surface for the visual-verification directive.

7.6 The migration warning, and the budget it confirms

forward from Remake (Kakuta).

Source — https://cgworld.jp/article/202408-ff7reb-04.html

**SYNTHESIZER CORRECTION 2026-08-05 — the REASON is different from the one the researcher return gave,

and the corrected reason is the one that actually transfers.** The return attributed the rebuild to

Cascade's official development and maintenance having ended. A direct re-fetch gives a sharper and more

specific rationale: **Square's proprietary engine modifications were so extensive that Epic's automatic

Cascade→Niagara conversion tool could not be used**, so the team worked "ゼロから" — from zero, with no

carry-over from the previous title. Cascade's deprecation is true background; the DECIDING factor was

accumulated engine customisation defeating the migration path. **That is a materially more relevant

warning for us**, because our stack's whole posture is heavy customisation of an engine we do not own

(ENGINE_OPTIMIZATION_DOCTRINE): the deeper the customisation, the less any future migration tool can

save, and the more total the rebuild. The lesson below is unchanged and now better grounded.

This independently confirms ENGINE_OPTIMIZATION_DOCTRINE §5.4 D9 (author VFX with Niagara only)

and adds the harder lesson: a VFX library does not port across a system migration — it is rebuilt.

Consequence for us: the family architecture must be chosen ONCE, before volume authoring, because the

rebuild cost is total rather than incremental. Wave 7 is therefore correctly sequenced as an

architecture wave, and the 248-key authoring volume must not start before it settles.

headroom allowed more particles, forcing strict load balancing and scene-specific optimisation for

wide-area effects despite the 4K/8K generic library. Source as above.

This is a comparator anchor for ENGINE_OPTIMIZATION_DOCTRINE §5.4 D1 (the 1.10 ms translucency +

Niagara budget at 60 fps): a shipped 60 fps AAA title with a dedicated VFX team still had to trim

per-scene. It also supports D2's posture — the binding limit is the measured millisecond budget, and

emitter counts open investigations rather than failing builds.

death effects. Source as above. ADOPTED for our AFTERMATH beat, whose stated universal rule is that

the aftermath is a change in the PLACE — the place's own wind should move what is left behind.

7.7 Honest limits of this addendum

own publication library (https://www.jp.square-enix.com/tech/publications.html) was checked: it carries

a CEDEC 2015 talk on the Luminous VFX Editor for FFXV -EPISODE DUSCAE- (Isamu Hasegawa, Ryota

Nozoe, Teppei Ono; slides at

https://www.jp.square-enix.com/tech/library/pdf/CEDEC2015_Luminous_FFXV_VFX.pdf) — a node-based effects

authoring tool — but no FF7R/Rebirth VFX talk exists in that library. The Luminous deck was NOT

read; it is the best remaining first-party source on how Square structures an effects-authoring tool

and is the top re-fetch for anyone hardening §7.3.

Use them to size a spike, never to set a gate — the §8.3 U-27 practitioner-number rule applies.

248, 372 at the clamp) driven by a closed cue-parameter set. Our architecture is validated BY ANALOGY

against Rebirth's user-parameter consolidation and Frostbite's data-driven graph, not by a matching

precedent. That is a genuine limit, and it argues for the visual-presence tooth being measured on our

own build rather than inherited from anyone's published practice.

director wants the VFX lane bound the way the music lane is now bound to PIPE_AUDIO_MUSIC, the

cheapest close is to promote §7 into PIPE_VFX_2026-08-05.md with the scattered law from

ASSET_DROPIN_CONTRACT §2/§7, D1-27_ELEMENT_VISUAL_LAW and ENGINE_OPTIMIZATION_DOCTRINE §5.4

D1/D2/D9 gathered into it — and a DOC_MAP row, per the anti-orphan rule.

---

8. ADDENDUM 2026-08-05 — THE ZONE FACTORY: how a comparator produces regions REPEATABLY (researcher C)

Josh, 2026-08-05, verbatim: "What about their pipelines?" This addendum covers the half of the

comparator-pipeline research that belongs to THIS dossier — how a shipped MMO produces zone after zone

off one process, read against our region factory. The itemization, loot, faction and live-tooling half

lands on PIPE_CONTROL_PLANE §7. Rig-archetype animation reuse is routed to PIPE_ANIMATION and was

deliberately not written there by this pass.

Source tier, declared up front. The zone-construction order below is COMMUNITY-DOC — a modding

and reverse-engineering write-up of Blizzard's observable workflow, corroborated by shipped map data,

not a Blizzard process document. Source: Marlamin, *WoW Modding 103 — Zone design*

(https://blog.marlam.in/modding-wow-part3/). The one PRIMARY Blizzard artifact in this area,

Ely Cannon's *Lessons from 15 Years of 'World of Warcraft' World Building* (GDC 2020, Visual Arts

track — gdconf.com/article/learn-blizzard-s-lessons-from-15-years-of-world-of-warcraft-world-building-at-gdc-2020/),

is art-direction and craft, not pipeline mechanics; it is cited here as the existence proof that the

process is a taught, repeated one, and nothing mechanical is attributed to it.

The ten-step construction order (as documented)

1. Narrative establishes the story; visual development produces rough sketches exploring colour,

biome and theme.

2. Asset KITS are built from the solidified concepts — foliage kits, building architecture, props,

terrain textures — before any zone exists.

3. A demo zone / "diorama" is assembled out of the early kit assets purely to see how the pieces

read together spatially.

4. A 2D layout map is drawn (Illustrator) with roads, points of interest and biome distribution,

often with a grid overlay matched to the world-chunk (ADT) scale so distances are real.

5. Rough sculpt / blockout — recent zones print the 2D layout onto the terrain and sculpt from it.

6. Rough texturing — tilesets painted across paths and ground.

7. Reference zones — an area holding finished assets, kept so they can be copied out across the map.

8. Refined texturing — detail passes plus vertex-colour painting layered over the tilesets for variance.

9. Atmosphere — colour grading and volumetric fog volumes per region.

10. Verification — the 2D layout map is overlaid on the COMPILED MINIMAP to confirm sizing and

point-of-interest placement.

What it teaches ours — four findings

F1. Kit-before-zone is CORROBORATED, not new. Step 2 is the same rule as our

CONCEPT_ART_PRODUCTION_PROGRAM.md D1-05: "Architecture kits per culture — every settlement,

interior, dwelling variant and civic monument derives from the kit. Kit before dwelling, always."

A shipped MMO builds zones in exactly that order, for exactly that reason. **VERDICT: no change; the

rule now carries an external receipt.** The extension worth taking is that their kit is FOUR classes,

not one — foliage, architecture, props, terrain textures — and our D1-05 names architecture only.

ADOPT — routed: the concept-art program should emit a per-region KIT MANIFEST across all four

classes, so the region build consumes a declared kit rather than an implicit one.

F2. The DIORAMA step is a real gap. Step 3 builds a throwaway demo zone from early kit assets

before any real zone is laid out, and its whole purpose is to catch "these pieces do not read together"

while it is still cheap. Our program produces plates and boards — a 2D consistency check — and then

goes to the real region. Nothing in the corpus greps as a diorama, demo zone or reference level.

ADOPT — routed: one KIT DIORAMA per region kit, built and LOOKED AT before the first real region

build of that kit. This is directly downstream of the visual-verification standing directive (game

work is verified by looking), and it is the cheapest possible place to catch a kit that does not hold.

F3. The REFERENCE ZONE is a solo-pipeline gift. Step 7 — an area of the map holding finished

assets kept specifically for copying — is a pattern that costs almost nothing and pays every time a

region is built. Our ASSET_DROPIN_CONTRACT.md carries a staging import manifest, which is the

transport; the reference zone is the SHOWROOM, an in-engine level where every landed kit asset stands

assembled and correct. ADOPT — routed to the asset drop-in contract as a persistent

RefZone_<region> level. Second-order benefit: it is also the natural home for the diorama in F2 and

the natural subject for a screenshot when Josh asks what a kit looks like.

F4. The minimap-overlay verification is a GATE we can automate today. Step 10 is a human

eyeballing the layout map against the compiled minimap. We already documented the tool that makes it

mechanical: WorldPartitionMiniMapBuilder, one of the headless World Partition builder commandlets

recorded in UE_BUILD_AUTOMATION.md (§3.3 builder list). Our regions already carry authored layout

data — POIs, zone-catalog sites, the region page's own spatial claims. ADOPT — routed: a gate that

renders the minimap headlessly and diffs authored POI placement against it, so "the built region

matches the region we designed" stops being a claim and becomes an exit code. Flagged honestly as a

post-first-region item — the gate needs one built region to be armed against, and an unarmed gate that

has never been mutated is not a gate.

One cross-lane corroboration (Pokemon, CEDEC 2022)

Game Freak's model production environment holds visual consistency across a thousand-plus creatures

and two concurrently-developed titles through a SHARED environment with standardized shaders and

effects — consistency carried by a shared artifact, not by per-asset discipline. Source: GoNintendo's

write-up of the CEDEC 2022 GAME FREAK session (gonintendo.com/contents/8412) — tier SECONDARY.

This is the same mechanism class as the 2026-08-04 seat-B1 ruling in this dossier's §8 item 4: the

per-region style LoRA trained on the region's own landed plates is our "shared environment", and

reference conditioning is the per-row remedy. VERDICT: corroboration, no change. It is worth

recording because it answers the obvious objection to that ruling — that a trained style artifact is

exotic. It is not; it is the standard answer to the standard problem, in the form our stack can afford.

Scoreboard

#TechniqueTeacherVerdictRoute
CA-1Four-class kit manifest per region (foliage, architecture, props, terrain textures) before layoutWoW zone processADOPTCONCEPT_ART_PRODUCTION_PROGRAM.md D1-05 extension
CA-2Kit DIORAMA built and looked at before the first real region of that kitWoW step 3ADOPT — genuine gapnew step in the region factory; visual-verification directive
CA-3Persistent in-engine REFERENCE ZONE of finished kit assetsWoW step 7ADOPTASSET_DROPIN_CONTRACT.md, RefZone_<region>
CA-4Authored layout diffed against the compiled minimap as a gateWoW step 10ADOPT — post-first-regionWorldPartitionMiniMapBuilder (UE_BUILD_AUTOMATION.md)
CA-5Consistency held by a shared trained artifact, not per-asset disciplinePokemon CEDEC 2022CORROBORATES the B1 style-LoRA rulingno change
CA-6Print-the-2D-map-onto-terrain sculptingWoW step 5NO-ADOPT NOWour terrain chain starts from real geodata (GEODATA_TERRAIN_CHAIN.md), which already supplies the base the printed map substitutes for

Generated by harness/site/structure_site.py — the URL path is the repo path. review root