Spector.js — WebGL Call Inspector for Three.js
Spector.js captures every WebGL draw call your scene makes — invaluable for diagnosing performance cliffs and rendering bugs.
Spector.js is a Chrome extension that captures every WebGL call your Three.js scene makes in a single frame. Useful when: scene runs slow but it's not obvious why, a material isn't rendering as expected, or you want to count draw calls (sometimes Three.js batches them, sometimes not). Spector.js shows the exact GL state per call — buffer binds, uniform uploads, draw arrays. Common surprises: Three.js recompiling a material every frame because a uniform changed type, redundant texture uploads when an asset is reused across meshes, frustum culling failing on custom geometries. The extension is free and one of the most valuable WebGL debugging tools.
What this delivers
Concrete output: a working spector js debug integration on a real production site, not a demo. The integration includes device-tier detection so weak phones get a lighter version automatically. Source files are handed over in their original formats — Blender, GLSL, glTF — so any future developer can continue where I stopped.
How I work with it
On a typical project, spector js debug ships as a self-contained module: one entry-point JS file, one CSS file, asset bundle below 1.5MB total. I keep the integration sandboxed so the rest of the site stays SEO-friendly classical HTML. Frame budget targets 60 FPS on a mid-range Android, with a measurable fallback below.
Performance budget
Lighthouse mobile target: 85+ across all categories. I measure on real devices, not just emulator. Asset compression: glTF + Draco for meshes, KTX2 for textures, Brotli for shaders. Lazy-load any spector js debug scene that isn't above the fold so the first paint stays under 1.5s.
When this is overkill
If the goal is a simple e-commerce listing or content blog, a full spector js debug setup is overkill — a CSS-driven hero plus static images converts just as well at 1/10 the cost. spector js debug earns its keep when the brand needs a memorable visual moment or when 3D actually clarifies the product (configurators, tours, demos).
Frequently asked questions
Why pick this technology over alternatives?
What if a newer tool comes out next year?
How long does this take?
What does it cost?
What if my visitors are on weak phones?
Ready to ship a 3D experience?
Tell me what you need — fixed price, fixed deadline, no surprises.