Thousands of trees grow from three meshes, a pine, a round tree, and a bush, each made once with NewSharedGeometry and shown by every tree of its kind. The GPU uploads each once and draws all of a kind in view in one instanced call; the wind rewrites every tree's transform, and nothing else, each frame. Switch to separate copies to watch the frame time climb.

Loading the terminal and scene…

Drag: orbit · Shift-drag: pan · Wheel: zoom · c fit · d fogi instanced or copies n trees: 500, 2,000, 8,000 a wind1 GPU 2 software 3 wireframer camera rotation g glyphs o projection q quit

The status line's frame time is the GPU's render; software draws every tree too, far more slowly. Click the terminal to focus keyboard controls. GPU falls back to software when unavailable. Reload to restart after quitting.