Tuesday, February 13, 2007

Emergence Juju

Real time 3D engines are the kinds of toys Georg Cantor wished he had.

I was taught that a computer was like a sewing machine; set the pattern and it will repeat that pattern without fail endlessly. Math buffs know different and why. Programmers live with the digital uncertainty and keep their fingers crossed that nobody is ever silly enough to let the machines run the planet or vote.

Every now and then, the VRML/X3D engine I use (BitManagement) will surprise me. One example is when the headlight turns itself on or other bits of randomness like binding to a new viewpoint without warning (typically when in motion), or routed events that don't fire even when the code is apparently correct, usually lights or sound events.

One tonight was grand. The opening title world has a golden fog node in it to give the sequence a bit of hazy slow depth (a hazy shade of summer?). Anywho, when the replaceWorld script fired, it replaced all of the nodes as it is commanded to do, then randomly turned the golden fog back on a few seconds after the new world loaded. It hung around quite neatly until the purple fog timer fired and replaced it (a scheduled purple haze all around her brain). That's a stack error but it looked mondo neat until it disappeared.

Part of the fun of real-time 3D is pseudo-randomness. Some behaviors emerge because different timers conspire to create different appearances in scheduled sequences such as the boat ride or when the camera follows Kamala. Others creep out when the software bugs conspire to play tricks on the author. Both would be in the bag if I could get the engine to do them twice, but are so much cooler because they won't.

Ya gotta love this stuff when the world starts hitting a level of complexity that it really does become emergent as chaos drives the evolution of a scene. I wrote it and I've been through it thousands of times and it still surprises me. Good juju.

... or bugs. Hard to tell the difference sometimes. Maybe that is why evolution horrifies creationists. They keep thinking someone or something is in control when in fact, it just wrote the scene and is now watching for the fascination of not knowing. They believe they are rooting for God when in fact, it was Lucifer that was horrified by the messiness and unknowingly, they've joined the wrong team.

If nothing is beyond the infinite, maybe Friedrich August von Hayek's 'necessary ignorance' is that nothing that has to be in the plan to satisfy the creative urge.

Comment Policy

If you don't sign it, I won't post it. To quote an ancient source: "All your private property is target for your enemy. And your enemy is me."