This is another undesired artifact for my evolution simulator EvolveJS. I stopped the simulation here to debug it, and thought it looked really interesting.
I’m working a new and improved version of the 3d evolution simulator. I abstracted all of the vector math so that it doesn’t matter if it’s in 2 dimension or 3 dimensions. Currently I’m working on updating the UI, finishing up some 3d specifics for determining mouse position in 3d space, and then I will probably tackle optimizing the rendering code. Three.js doesn’t have anything built in that I can tell that is good for cloned geometry. I’ll probably end up writing my own shader.
It’s amazing to see the various emergent behaviors from developing an evolution simulator. These screenshots are unintended behaviors that are essentially bugs in the functionality. However, these bugs are generally related to the way the entities are taking advantage of properties of fitness in an evolutionary sense.