Murmuration

Three local rules, one emergent flock. Move your cursor over the canvas to scatter it, or drop obstacles for it to stream around.

Keyboard: Space pause, R reset, T trails, O cycle the cursor mode, X clear obstacles.