Another thought: why use rgba for the particle colours? Aren’t they (initially??) fully opaque? That is, couldn’t you replace

“rgba(49,153,255,”:”rgba(255,49,166,” with “#3199ff”,”ff31A6″

Or is there some reason why that would be inappropriate?

Also, how about having your swarm moving through a 3d space rather than a 2d space?