[object Object]

← back to Quadrille Showroom

REVIEW.md: FINAL pass-5 section — honest B- grade (up from D+ at pass 1) vs a real Phillip Jeffries showroom photo. Documents what the per-board lighting pass resolved (gradient+sheen / wall drop-shadow / real picture-light shadows, all measured) and the top 2 remaining gaps: swatch-tile resolution (source-side) + commit-to-one-dominant-key lighting authoring.

fb6800c2b7aa61136e6eae37711ce5bdf749b234 · 2026-06-27 12:47:53 -0700 · Steve

Files touched

Diff

commit fb6800c2b7aa61136e6eae37711ce5bdf749b234
Author: Steve <steve@designerwallcoverings.com>
Date:   Sat Jun 27 12:47:53 2026 -0700

    REVIEW.md: FINAL pass-5 section — honest B- grade (up from D+ at pass 1) vs a real Phillip Jeffries showroom photo. Documents what the per-board lighting pass resolved (gradient+sheen / wall drop-shadow / real picture-light shadows, all measured) and the top 2 remaining gaps: swatch-tile resolution (source-side) + commit-to-one-dominant-key lighting authoring.
---
 REVIEW.md | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/REVIEW.md b/REVIEW.md
index 9131a99..523b4f6 100644
--- a/REVIEW.md
+++ b/REVIEW.md
@@ -64,3 +64,67 @@ real continuous design — you're seeing a Rorschach of it. A buyer wants to see
 reading as procedurally-drawn canvas and become real photo textures with believable
 light, the scene will always say "3D demo," never "PJ showroom photo." Everything else
 (framing, placards, brightness) is a B-grade polish problem; the materials are the D.
+
+---
+
+## FINAL — pass 5 (per-board lighting). Reviewer: VP Research & Content, 2026-06-27.
+
+### Overall grade vs a real Phillip Jeffries showroom photo: **B−**
+
+That is two full grade-bands up from the pass-1 **D+** verdict at the top of this file,
+and the move is real, not generous. The shell passes (photoreal SDXL floor + walls with
+derived normal/roughness maps, a real warm-plaster ceiling, a bright even white-box
+wash) closed the category gap that used to scream "game engine." This pass closed the
+last named one: the boards.
+
+### What this pass resolved (the per-board lighting gap)
+
+Before pass 5 the wingboard faces were lit flat and uniform — every board the same
+brightness top-to-bottom, so they read as evenly-lit *decals stuck on a wall*, the final
+CGI tell once the shell was photoreal. Three changes fixed it, each measured + committed
+separately:
+
+1. **Per-board light gradient + sheen** (`433800b`). Each 6-ft face now carries a baked
+   top-to-bottom luminance falloff — a faint warm specular sheen in the upper third where
+   the picture-light grazes it, a neutral true-colour mid-band, a modest warm-charcoal
+   shade at the bottom. Plus the board material went satin (roughness 0.85→0.6, a hint of
+   envMap) so the grazing light actually catches the surface. Boards now read as physical
+   objects in a lit room. Crucially the swatch colour stays **true and legible** — the
+   mid-band is neutral so the navy/sage/blush/teal all read correctly; nothing is crushed.
+2. **Wall drop-shadow** (`ce3b7f3`). Each board casts a faint soft sprite-shadow onto the
+   wall behind it, dropped down+left to match the upper-right key. Boards now have depth
+   *off* the wall instead of sitting flush. Zero render cost; auto-hides on focus.
+3. **Real picture-light shadows** (`ac87a36`). FPS headroom allowed enabling genuine
+   shadow-casting on the gallery picture-light, so the focused hero board throws a
+   physically-correct soft shadow the fake sprite couldn't. Measured min **59 FPS** on the
+   2-min soak — above the ≥55 real-shadow gate — so it stays.
+
+Verification (hard gate, all passed): walkthrough **72 FPS**; 2-min soak **min 59 / avg
+68 FPS**; **errorCount 0**; spec card intact (Width 27″ / Repeat 27″ V / Straight match /
+Hand screen-printed on paper / China Seas); `01-overview.png` + `04-spec-card.png`
+confirm boards read dimensional **without** any loss of swatch legibility.
+
+### Top 1–2 things still separating it from a true photograph
+
+1. **The wallcovering swatch itself is the weakest-resolution surface in the frame now.**
+   The room shell is photoreal and the boards are now lit like physical objects — which,
+   ironically, throws focus onto the *pattern texture* on the board face. On the procedural
+   pool patterns (Damask/Grasscloth/Stripe drawn at 128×256) and on lower-res catalog
+   images, the design reads slightly soft / vector-ish at hero distance compared to the
+   crisp plaster and oak around it. A real PJ photo has the wallcovering as the *sharpest*
+   thing in frame; here it's competitive but occasionally the softest. The fix is source-
+   side: higher-res seamless tiles per SKU, not a render change.
+
+2. **Light is plausible but not yet photographically *grounded* in a single coherent
+   key.** The scene reads bright and even (correct for a PJ white-box), but a photograph
+   has one dominant light direction that rules every shadow, highlight, and falloff in
+   lockstep. Here the ambient/hemi/key/fill/rim/picture stack reads *even* more than it
+   reads *lit-by-one-window* — so shadows are soft and a touch directionless, the giveaway
+   that no single real luminaire is in charge. A real PJ interior shot has a clear window
+   or track-light authoring the whole frame. Pushing one key harder (and trimming ambient)
+   would trade a hair of evenness for a lot of "this is a photograph."
+
+Net: the build now reads as a **convincing CGI render of a real showroom** — a viewer has
+to look for the tell. It is no longer "obviously a 3D demo." Closing the remaining gap is
+a source-asset problem (sharper swatch tiles) plus one lighting-authoring decision (commit
+to a dominant key), not a structural one.

← ac87a36 REAL PICTURE-LIGHT SHADOWS: enable castShadow on the gallery  ·  back to Quadrille Showroom  ·  Dominant key light: ambient 0.72→0.5, hemi 0.58→0.45, key 0. ffa75d5 →