If a page makes Chrome's GPU process reset (too much memory, a driver timeout), Chrome blames the page and refuses new WebGL contexts for it:
THREE.WebGLRenderer: A WebGL context could not be created.
Reason: Web page caused context loss and was blockedWhat to do:
- Treat it as a performance bug in your scene, not a "WebGL unsupported" case.
- Always handle
webglcontextlost(preventDefault(), stop the loop, show a fallback). - In automated tests, check that a fresh context works on
about:blankfirst. Otherwise you are measuring the previous run's damage.