John Carlson <[email protected]> writes:

> I'm not sure why evolving explosions is a bug.  You just want to make sure
> you survive afterwards.

It's a great evolutionary strategy. There's no need to survive either;
the situation is basically "you will be killed in a few seconds, but the
quicker you move in that time, the greater the chance that I'll clone
you". Exploding doesn't affect their reproduction.

The bug(s) is in the physics engine. It looks like it's naively
approximating Newtonian mechanics by integrating with a finite, constant
dt (rather than infinitesimal dt). This causes large errors in the
position of the creatures legs if they're moved fast enough, allowing
them to self-intersect.

The collision-handling code is then moving these intersecting body parts
apart, which is effectively applying a huge force to them. These forces
are unbalanced, breaking Newton's third law, so there is a net force on
the creatures, which lets them levitate.

If the collision-handler pushes apart one intersection but causes
another, the forces will build up. This rebounding allows the
collision-handler's hack to dominate the simulation and cause the
creatures to explode.

Cheers,
Chris
_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to