THREE.JS / FOUNDATIONS 145

Spend the reflection budget wisely.

Two reflective surfaces make quality tradeoffs measurable. Compare target resolution, internal MSAA, recursive capture policy, and a live downshift while renderer statistics show the cost of the choice.

Initializing Backend pending

Preparing two reflection targets and the quality policy.

mode
-
quality
-
surfaces
-
capture MP
-
MSAA / bounces
-
rough VRAM
-
draws
-
CPU avg / p95
-
Quality policyWebGPU quality controls are live.
Render graphpending
actors→2 ReflectorNodes→target scale→MSAA→pipeline

Each reflective surface owns a color target; recursive mode allows reflector captures to see one another.

GPU ownershipwaiting
actor field-
reflector targets-
renderer targets-
quality boundary-
sample stateidle

Preset changes rebuild constructor-owned MSAA and bounce policy; the live downshift only mutates resolutionScale.

Drag to orbit · WebGPU runs the quality ladder · use ?forceWebGL=1 for the direct baseline

Compare WaterMesh reflection and refraction →
LAB 145 / REFLECTOR QUALITY