Evolution Arena
Evolution Arena is an interactive 3D WebGL survival game that turns evolutionary biology into something you can experience rather than simply read about.
Core trick
Each generation's survivor picks a trait with an energy cost, and habitat choices shift which mutations are offered next.
Tags
Description
Evolution Arena is an interactive 3D WebGL survival game that turns evolutionary biology into something you can experience rather than simply read about. You control a small organism in a living ecosystem and must gather food, manage energy and warmth, evade predators, cross rivers, survive storms and nights, find shelter, and reproduce. At the end of each successful generation, you choose an inheritable mutation from faster limbs and camouflage to larger eyes, armor, swimming fins, glide wings, toxin resistance, stronger jaws, or more efficient digestion.
Every adaptation has both a benefit and a cost, and different environments reward different bodies. Faster limbs consume more energy. Armor reduces damage but slows movement. Better digestion extracts more energy but reduces maximum speed. The habitats a player spends time in also influence which evolutionary opportunities are presented to the next generation, creating lineages that visibly and mechanically diverge over time.
The central insight behind the project is that evolution becomes much more intuitive when adaptation is experienced as a series of constrained tradeoffs under changing selection pressures. There is no universally optimal organism: success depends on the environment, accumulated traits, available resources, predators, and the player's behavior. That matters because concepts such as natural selection, fitness landscapes, ecological niches, inheritance, adaptation, and evolutionary tradeoffs are often taught abstractly. Evolution Arena makes them tangible, visual, and playable.
README excerpt
# Evolution Arena A procedural WebGL survival game about adaptation, tradeoffs, and natural selection. ## Run locally ```bash npm install npm run dev ``` Open the local URL printed by Vite. For a production build: ```bash npm run build npm run preview ``` ## Controls - `W` `A` `S` `D` — move - `Shift` — sprint - `Space` — leap or glide - `E` — bite nearby predators - `Esc` — pause Touch controls appear automatically on mobile and tablet devices. ## Game loop Gather luminous food, manage energy and warmth, evade predators, and use caves or forests as shelter. Once the organism has both survived long enough and stored enough reproductive energy, return to the glowing nest and choose a mutation for the next generation. Rotating side instincts (roam, leap, brave the river, endure the night, and more) appear beneath the main objective. Completing one grants a bonus — extra reproduction energy, restored vitals, or a shorter maturation timer — so pursuing them is the fastest route to the next evolution. Every mutation changes the creature model and its survival mechanics. Adaptations stack across generations, while costs such as extra energy use, reduced mobility, or weaker recovery prevent a single strategy from dominating every habitat. ## Tech stack - [Three.js](https://threejs.org/) for real-time WebGL rendering - [Vite](https://vitejs.dev/) for the dev server and production build - No backend — the entire game runs client-side ## Promo assets The [`promo/`](prom