Writing / tag
#threejs
three.js performance and rendering: draw calls, shaders, outlines and assets. 3 posts, newest first.

Hundreds of Draw Calls Down to a Handful with BatchedMesh
7 min read
How Typo's Voyage draws every tile and every 3D letter through four three.js BatchedMeshes, poses a whole treadmill on the GPU with one vec4 a frame, and what breaks when you move instances in the vertex shader.

Your Shader Stutter Happens at First Draw
8 min read
A three.js hitch the first time an effect appears is usually a WebGL program link. It blocks at the first draw, not at compile, and a warm-up only fixes it if it links the same program variant your frames use.

Roll It Has No Outline Pass
9 min read
The ink lines in Roll It aren't a post-process. Each material finds its own edges: the median of three distances on a box, crease barycentrics on a mesh, and a view-angle band on the ball.