2026-06-28 · standalone three.js cloud port · measured on the real GPU (RTX 4070 Ti SUPER), your exact screenshot camera (pos 27485,41504,-5377 · yaw −77° · pitch −37°), frozen + phase-matched · every probe is a flagged debug param (the render default is unchanged).
Same camera, same cloud, frozen. Left of the handle = normal. Right = in-cloud self-shadow switched OFF (sk=0). Watch the green billows: their form is made of the puffs shading each other — kill it and they go flat white, like the red.
| region | normal — local contrast | self-shadow OFF | reading |
|---|---|---|---|
| GREEN clumped puffs | 6.0 (darks→156) | 0.6 (darks→240) | form collapses ~90% → the darks WERE self-shadow |
| RED flat merged mass | 0.9 | 0.5 | barely moves → it had almost no self-shadow to begin with |
To go past "it looks flat" and measure why, here is the surface relief itself — a depth map of where each ray first hits cloud (no lighting at all). Bumpy = clumped puffs; smooth = a merged mass.
| candidate cause | test | result |
|---|---|---|
| Near-camera fade (A3) | disable it (noa3=1) | RULED OUT — byte-identical (the red mass is ~65k units away, far outside the ~800u fade zone) |
| LOD coarsening (far = less detail) | force full detail (lodpin=1) | MINOR — relief unchanged; lit form lifts only a little (red 0.9→1.3, green 6.0→8.2). Not the fix. |
| The coverage / noise field itself | the relief measurement above | THE DOMINANT CAUSE — red is a far, high-coverage, low-relief smooth region of the cloud function |
Honest nuance: the relief map measures the outer envelope; the full self-shadow gap also involves internal density heterogeneity (which the envelope understates). The direction is unambiguous — red is a smoother, higher-coverage mass — but the relief number is a floor, not the whole story.
Tl = exp(−k·od), and the darks come from od varying between neighboring rays, not its average. A smooth merged mass returns near-identical od per adjacent ray → near-flat Tl → blinding white, no matter how hard you push the shadow dial. We proved this: deeper self-shadow (sk14) lifts green 6.0→7.3 but barely moves red (0.9→1.1). You cannot extract relief-shadow from a region that has no relief.
The earlier contrast page recommendation — sk14 deeper self-shadow — still holds for everywhere clumping already exists (your green billows: +31% form). That's the quick win on the clumped regions; this density work is the fix for the merged masses. Two tracks, both real.
Method: qa/tools/_theory-cap.mjs + _density-cap.mjs (his-camera frozen + the relief AOV / lodpin / noa3 probes) · cd-twin/tools/features.py (relief + local contrast) · adversarial Workflow (confirm/refute/math) · this page. Your theory + its confirmation are logged as cd-twin record 0008. The CD's eye is the verdict — this is a pre-screen.