A satellite-draped heightfield streamed from public elevation tiles, planted with thousands of wind-blown bamboo — two declared entities, two instanced draw calls.
A terrain volume names a lat/lon bounds; the handler fetches elevation and satellite tiles, builds the heightfield, and publishes a terrain.sample(x,z) ground-height function back onto the component. A vegetation volume holds a plain array of plants; a small behavior blob scatters clumps across the terrain using the sampler and grows heights in place each tick. Culms, node collars, leaf crowns, wind, and shadows all come from the handler. See demo-terrain.js.