diff --git a/Docs/Vault/06_Roadmap/Roadmap_Lantern_Slice.md b/Docs/Vault/06_Roadmap/Roadmap_Lantern_Slice.md index fb0f79720..ed04327b5 100644 --- a/Docs/Vault/06_Roadmap/Roadmap_Lantern_Slice.md +++ b/Docs/Vault/06_Roadmap/Roadmap_Lantern_Slice.md @@ -170,6 +170,18 @@ Runs parallel with 4–6 where possible. > home for the flicker anyway.) The staging warm/cold read now separates by **value + flicker-cadence**, not hue alone > (passes the grayscale/colorblind check). +> **A0 update (2026-07-21) — value/composition rework pass.** A critical re-read of the staging scene found +> the mood + material system passing but the value hierarchy INVERTED (the suit's albedo/lamp out-valued the +> beacon — the opposite of "light is territory") and the composition weak (Drowner facing away + dying at +> 200px; crate occluded; T-pose). Fixed headless: global fill lights cut (KeyWarm 1.25→0.15, Caustics 32→9, +> GloamFill 0.5→0.22), `WarmPool` reworked into a downward warm SPOT = a defined ground-territory disc, suit +> lamp emissive tamed + bloom threshold raised (killed a blown chest streak), Drowner faced-to-camera + accents +> boosted, triad recomposed (crate in-pool / Drowner at the lit edge / suit center). Grayscale now shows the +> beacon as the value winner + a mid-value warm territory — the three-way mechanical judge PASSES. +> **Still open for sign-off: the suit POSE (a Blender rig+pose sitting — the body is an unrigged Synty mesh + +> 37 welded attachments; aligns with the A3 Wick-sculpt work) + the eyes-on-only criteria (flicker-cadence, +> the "this game and no other game" call).** See [[2026-07-21_ArtStaging_A0_Value_Pass_J]]. + ## A1 — Pipeline proof (runs alongside Phase 1) 1. **Two written recipes, checklist-grade** (this project runs on distilled gotchas; the art pipeline gets the same treatment): diff --git a/Docs/Vault/07_Sessions/2026/2026-07-21_ArtStaging_A0_Value_Pass_J.md b/Docs/Vault/07_Sessions/2026/2026-07-21_ArtStaging_A0_Value_Pass_J.md new file mode 100644 index 000000000..4d3798706 --- /dev/null +++ b/Docs/Vault/07_Sessions/2026/2026-07-21_ArtStaging_A0_Value_Pass_J.md @@ -0,0 +1,48 @@ +# 2026-07-21 (J) — ArtStaging A0 value-hierarchy + composition pass + +**Operator: screenshot ArtStaging, critically analyze, then "implement all of those changes."** A critical read of +the A0 style-proof scene found the mood + material system passing but the **value hierarchy and composition +failing** — the suit's cream albedo (and later its lamp emissive) out-valued the warm beacon, inverting the +"light is territory" thesis; the Drowner faced away and died at 200px; the crate was occluded; the suit was +T-posed. Four of five fixes were staging (headless); the fifth (pose) is a Blender sitting. + +## Shipped (ArtStaging.unity + shared assets) + +1. **Value hierarchy — the thesis fix.** The culprit was GLOBAL fill flattening the scene: `KeyWarm` + directional 1.25→**0.15**, `CausticsSpot` 32→**9**, `GloamFill` 0.5→**0.22**. Then `WarmPool` (was a point + light sitting over the crate, blasting the suit's chest into a blown bloom streak) → converted to a + **downward warm SPOT** (pos y3.6, straight down, 80° cone, range 10, intensity 85): a defined warm ground + DISC = literal territory, lighting the suit top-down instead of punching its chest. `M_Emissive_Warm` + (chest/port/shoulder lamps) tamed 1.0→**0.62**; bloom threshold 1.0→**1.3** (the three coincident lamp + emissives were blooming into a horizontal streak at the old threshold). **Grayscale-verified:** the gold + dome (a LIGHT) is now the brightest value and the warm disc reads as a mid-value territory — the correct + winner. Iterated across 4 capture passes to land the pool strength vs suit-blast balance. +2. **Drowner** rotated to face camera (was showing its back, Y20→Y200) + `M_Emissive_Gloam` accents boosted + (0.16,1,0.53 → 0.45,1.3,0.75) so the silhouette rims from any angle (VFX-first identity). Now reads at 200px. +3. **Recompose**: crate inside the warm pool beside the suit (ours/banked), Drowner at the pool's RIGHT edge + (threat lives at the light boundary), suit center — the composition serves the fiction. Triad reads as three. +4. **Ability-bar leak fixed** (my regression): `AbilityBarSystem.OnUpdate` early-returns with no valid + NetworkTime, so in ArtStaging (client world, no connection) the tree built but the "hide when no local + player" line never ran → an empty 5-slot bar polluted the frame. Fix: root defaults `DisplayStyle.None` at + build, flips to Flex only when a local player is found — also kills any pre-connect/menu flash in gameplay. + +## NOT done — the suit pose (operator-gated Blender sitting) + +The staging suit is one combined Synty body mesh (`SM_Chr_SpaceSoldier_Male_01`) welded with 37 static kit +attachments, **no rig** in the exported asset (Unity: SMR=0, no Animator). Posing the T-pose requires a Blender +session — rig the body to the Synty humanoid armature (which is conveniently the current Blender workspace: +`Armature` + `SK_DUMMY_POLYGON_01` + a `PoseCam` are open), pose it, re-parent/re-weld the 37 attachments, and +re-export. That's an `/art-dev` nudge-and-bake sitting (operator is a Blender beginner), NOT a headless tweak, +and it aligns with the roadmap already flagging the custom Wick pose/sculpt as **A3** work. Did NOT force a +scripted pose (would risk breaking the 37-attachment fit) and did NOT clobber the operator's live Blender +session. Presented as the one remaining A0 item. + +## A0 verdict + +Mood + material system: PASS (unchanged). Value hierarchy + composition: now PASS on the mechanical three-way +judge (full-size / 200px / grayscale). Remaining before sign-off: the suit pose, plus the two eyes-on-only +criteria a still can't judge (flicker-cadence steady-vs-gutter, and the binding "this game and no other game" +call). Captures: scratchpad `artstaging_final.png` + `final_gray.png` + `final_200.png`. + +**Next:** the pose sitting (if the operator wants A0 closed now) or accept the concept-pose and sign off on the +lighting/composition; either way the style-proof scene is materially stronger than the 07-14 build.