THREE.JS / FOUNDATIONS 146

Let the frame choose.

A quality governor watches the renderer's cost, waits for sustained evidence, then moves through a reversible quality ladder. GPU timing is preferred when supported; CPU submission is labeled as the fallback.

Initializing Preparing renderer

Preparing the quality ladder and timing sensor...

policy
manual
quality
-
sensor
-
budget
-
cost p95
-
draws
-
Governor controlshysteresis prevents thrashing

The governor is off. Sampling records a sustained window without changing the policy.

Quality graph-

The graph will report its structural quality boundaries after initialization.

actors+shadow+reflection+post->canvas
Ownership and evidencewaiting
reflector target-
shadow map-
tracked targets-
last decision-

Resource ownership is reported after the renderer initializes.

Try ?forceWebGL=1 to exercise the WebGL2 path. GPU timestamps require the backend's timestamp-query feature; otherwise the governor uses CPU submission timing.

THREE.JS FOUNDATIONS LAB