Here are a handful of virtual creatures inspired by Karl Sims' Evolving Virtual Creatures (1994).
The bodies and the "brains" that control them were created through some basic evolutionary algorithms. That means rather than anyone designing each creature, they started off randomly generated (and hopeless at swimming) and gradually developed through evolution. The system generates a batch of slightly different creatures, tests each to see which is best at swimming, and picks the most successful to form the basis of the next generation. There's some more nuance involved to keep variety, and of course which ones are picked for showing here is very much decided by a human.
The bodies are a graph of blocks, with joints of various types connecting them. That graph has built-in support for lateral symmetry, although they can add asymmetrical blocks as well. The brains are fairly tiny neural networks, which include input indicating the relative direction to the target. The nature of how these are structured plays at least as much a role in what ends up appearing as the (also fairly basic) physics simulation of the blocks moving through the water.
Drag to orbit, scroll or pinch to zoom. Tap to place the target it'll swim towards. "Course" mode automatically adds a new target when the current one is reached. "Follow" keeps the camera on the creature.
It does need WebGPU, which today means a recent Chrome or Edge, Safari 26+, or Firefox 141+, on a machine with hardware acceleration switched on. This could absolutely be done with WebGL but WebGPU makes running the physics simulation on the GPU much easier, which helps a lot with running the evolution trials. The above is just a viewer, not running any evolution itself.