Fixed inputs
Original GLB and embedded atlas; source geometry and transforms; camera, projection, key vector, fog, sky, tone mapping, exposure, canvas size, DPR, texture decoding, and material base colors.
Execution and claim ledger
This page separates executed evidence from interpretation. The images are direct captures of one Three.js 0.184.0 scene on one physical NVIDIA GPU. They are not illustrations and they do not claim to be final art direction.
Focal-asset atlas
The cards use this deterministic 330 x 450 crop because the wide field view understates subtle diffuse and normal changes. These are cropped pixels from the accepted captures, not separate renders. Open the crop receipt.
Wide scene and value atlas
Invariant receipt
Original GLB and embedded atlas; source geometry and transforms; camera, projection, key vector, fog, sky, tone mapping, exposure, canvas size, DPR, texture decoding, and material base colors.
The selector's only controlled rendering mutation is uMode, shared by all controlled scene materials. It also updates the selected UI state and URL. S08 deliberately moves rendered vertices inside that same shader; its card says so. The contact mark stays fixed as a grounding witness.
ANGLE (NVIDIA, NVIDIA GeForce RTX 4070 Ti SUPER (0x00002705) Direct3D11 vs_5_0 ps_5_0, D3D11). Software renderers were rejected by the capture harness.
Repeated Lambert captures were byte-identical. Geometry 10 to 10; textures 2 to 2; programs 2 to 2 across 1,000 selections.
Control fingerprint: 67076334c03698c21d047a2d1313085281753a86078e527099e015488e82d240. Source asset SHA-256: 96df166216e28160c1554a80b6a84bfe900916f11aac9eb43d9ade2d45e6a8ec.
Important distinctions
S06 and S07 quantize the lighting scalar before it multiplies the atlas. The result follows form-light boundaries.
S14 quantizes final material channels after lighting. Each channel steps independently, so new colors can appear.
S15 replaces final material color with the nearest of eight declared swatches. It is a palette decision as well as shader math.
S17-S19 use screen coordinates only on fragments covered by scene surfaces. They sample no completed-frame buffer and leave the sky unchanged.
Per-mode receipt
| ID | Executed mechanism | Pipeline | Pixels changed vs S00 | SHA-256 prefix | Source/context |
|---|---|---|---|---|---|
| S00 | Lambert reference The positive normal-light dot product multiplies the same base color, with one fixed ambient floor. | MATERIAL FRAGMENT | 0.00% | f78974705558031a | Three r184 Lambert source |
| S01 | Unlit atlas The fragment shader returns decoded base color without consulting the light vector. | MATERIAL FRAGMENT | 31.65% | b043b553ebe0e9ce | Three r184 MeshBasicMaterial |
| S02 | Wrapped diffuse Signed N dot L is offset by a fixed wrap amount and normalized before diffuse multiplication. | MATERIAL FRAGMENT | 48.85% | 28939f1fbaea5745 | Project wrapped-diffuse implementation |
| S03 | Half-Lambert Signed N dot L is remapped to zero-to-one, clamped, and squared. | MATERIAL FRAGMENT | 4.58% | 4b49196c7d66576a | Valve Source SDK Half-Lambert witness |
| S04 | Diffuse plus specular Lambert diffuse receives one fixed Blinn-Phong half-vector lobe. | MATERIAL FRAGMENT | 49.78% | e3d26d7e4a593e39 | Three r184 shader sources |
| S05 | Warm-cool Gooch Signed N dot L interpolates between immutable cool and warm terms over the same atlas. | MATERIAL FRAGMENT | 50.72% | ad265e93587ade9e | Gooch shading paper |
| S06 | Two-band toon A fixed threshold converts continuous Lambert response into one shadow value and one light value. | MATERIAL FRAGMENT | 44.33% | 693beaf6428b3d05 | Three r184 toon ramp mechanism |
| S07 | Soft four-band toon Three narrow smooth transitions assemble four fixed diffuse plateaus. | MATERIAL FRAGMENT | 42.45% | 060c8465fd1537bb | Three r184 toon ramp mechanism |
| S08 | Static vertex wobble A frozen analytic wave displaces each source vertex along its normal; time never advances. | VERTEX + FRAGMENT | 5.08% | ab1ddaea6ce5745b | Three r184 ShaderMaterial foundation |
| S09 | Flat-face normals Screen derivatives reconstruct a face normal in the fragment shader. | MATERIAL FRAGMENT | 28.90% | afbc9abb9cf33621 | Three r184 flat-normal source |
| S10 | Analytic matcap View-space normal coordinates index an analytic lit-sphere equation; no added image texture is used. | MATERIAL FRAGMENT | 51.50% | 3e15a5abd69b738e | Three r184 matcap mechanism |
| S11 | Cool rim light A fixed Fresnel-style power curve of one minus N dot V is added after Lambert. | MATERIAL FRAGMENT | 51.44% | 5aa547c9495767e9 | MIT Toon RP rim implementation |
| S12 | View-normal RGB Normalized view-space normals map from minus-one-to-one into RGB zero-to-one. | MATERIAL FRAGMENT | 52.09% | abef6c30347cb650 | Three r184 normal material source |
| S13 | Iridescent Fresnel Fresnel and fixed world position index a procedural cosine palette. | MATERIAL FRAGMENT | 52.09% | 9bf8f23494335b33 | Three r184 shader foundation |
| S14 | RGB posterize Final material RGB channels are independently quantized after lighting. | MATERIAL FRAGMENT | 50.72% | a972ae73021571f7 | Three r184 posterize source |
| S15 | Nearest fixed palette The shader selects the nearest of eight immutable linear-RGB palette swatches by squared distance. | MATERIAL FRAGMENT | 51.88% | 9bd4cc421b348b6e | MIT nearest-palette loop witness |
| S16 | Luma-preserving broken color World-space hash selects hue-biased tints, then rescales them toward the original luminance. | MATERIAL FRAGMENT | 40.86% | ceb33bf72f861047 | MIT GLSL noise foundation |
| S17 | Material halftone Fixed-resolution gl_FragCoord cells draw luminance-weighted analytic dots inside the object shader. | MATERIAL FRAGMENT | 5.82% | dcbe62d39f2c5a7f | Three r184 ToonShaderDotted |
| S18 | Material crosshatch Two analytic screen-space line fields activate at separate Lambert shadow thresholds. | MATERIAL FRAGMENT | 4.72% | bdf669c6781d0cd2 | Three r184 ToonShaderHatching |
| S19 | Ordered material dither A fixed four-by-four Bayer threshold offsets five-level RGB quantization inside each material fragment. | MATERIAL FRAGMENT | 50.72% | f09d8981e41397a7 | Three r184 shader foundation |
Limits of the proof
Corpus anchors