A re-implementation of Karl Sims' Evolved Virtual Creatures (SIGGRAPH '94). Each creature grows from a directed-graph genotype: nodes describe blocks, joints and local neural circuits, and connections place child blocks (with recursion, reflection and terminal-only flags). Brains combine joint-angle, contact and photo sensors with neurons computing sums, products, thresholds, memories and oscillators; effectors apply torques bounded by the cross-section of the parts they join.
The population is tested in parallel Web Workers with the Rapier physics engine. The best fifth survive, and offspring come from mutation (40%), crossover (30%) and grafting (30%), in proportion to fitness. Drag to orbit, scroll to zoom. Progress is saved in this browser for each behaviour.