Scott Draves was kicking back one night, enjoying some relaxation and friendship and watching a video of a fractal flame animation, when the idea for electric sheep, a distributed screen saver that makes real-time animations of fractal flames, was born.His Web site, electricsheep.org, showcases many of the hauntingly beautiful flames that are created on the fly with this GPLed application. Draves' page is the destination on the 'Net for fractal flame examples and software.
An Adobe AfterEffects plugin called AeFlame is based on Draves' original work with the flame render engine. But the screensaver idea is by far the most intriguing offering. Draves and his friend Nick Thompson sat and "fantasized about realtime animation, but computers are still 1,000 times too slow" to create realistic animations of the complicated fractal images, says Draves. "The idea dawned on us: put a bunch of computers together via the Internet, like seti@home, but creating beauty instead of wasting cycles."
At the time, Draves says, it was just idle chat. But shortly after that, he left his job as a software engineer at Transmeta and suddenly had the time to make the fantasy come true. "It took me a week to write the first version. It was good enough to release and get
the project going. It was also the first perl program that I had written from scratch."
The screensaver gets its name from Philip K. Dick's novel, Do Androids Dream of Electric Sheep? -- and Draves says of it, "it realizes the collective dream of sleeping computers from all over the Internet."
Here's how it works: When the screensaver is activated, the computer connects to a remote server as a client, and joins in with other computer in creating animations of fractal flames. Every 15 minutes, a new "sheep" or flame animation, is distributed to every client, and that sheep is displayed in the screensaver.
Draves' site displays some examples of the computer-generated artwork, as well as links to RPMs and source code for the program. On the status page, you can check to see if the server is up, and look at the current sheep.
Draves has just taken a leave of absence from his current job in order to concentrate fully on adopting a new video codec for the engine, which will increase the size of the graphic display. He's open to suggestions. "If anyone can recommend a video codec that is fully open source (coder and decoder) and handles high bitrate (640x480 30fps high quality) please point me at it! Compression ratio is not as important as quality and fast playback."
He is grateful for the support he's received so far, but is quick to point out that the project can always use some help. "Paul Graham made a very generous donation of cash to support this project, and more of the same would make a big difference! The web hosting is provided by Dean Gaudet's arctic.org online community. Dean is an old-school apache developer. And some of the heavy lifting of the hosting of the mpeg files is provided by cs.cmu.edu."
The help forum is bustling. Questions and requests for help get quick response from Draves and others. The file is small and easy to install if you have the apps it depends on to run. Just one thing: I wouldn't recommend electricsheep for those who are actually trying to get some shuteye -- these animated fractal flames are just too gorgeous to take your eyes off of. You'll want to keep your hands off the keyboard just to keep that screensaver going.