THREE.JS / MATERIAL CONTRACT
A coating is its own lobe.
A procedural comparison makes MeshPhysicalMaterial clearcoat observable: base roughness, coating intensity, coating roughness, red/green channel maps, an independent normal layer, shader invalidation, and explicit ownership.
ReadyWEBGL2 / PHYSICAL
Preparing the coating layers.
- material
- —
- coat / base
- —
- maps
- —
- normal layer
- —
- shader version
- —
- sample avg / p95
- —
This is a procedural clearcoat contract, not the official gallery asset or pixel composition. Environment, arbitrary UV/map matrices, device performance, context loss, and whole-example fidelity remain separate boundaries.
Sources: MeshPhysicalMaterial docs · official clearcoat example