If it’s possible to feel sorry for a technology, we should all feel very sorry for Web 3-D. Its sad history began in the mid 1990s with the Virtual Reality Modeling Language (VRML) standard, which was too early and too heavy. Then almost everyone took a blind swing at the piñata. Adobe tried with Atmosphere, Macromedia with Shockwave 3D, Microsoft with Chromeffects and Sun Microsystems with Project Wonderland, not to mention hundreds of smaller companies. The International Organization for Standardization (ISO) also produced not one but two major 3-D standards, which browser makers have completely ignored.
“Why isn’t 3-D fully integrated into the Web browser today?” asks Tony Parisi, the co-creator of VRML and a 3-D Web consultant. “That’s the long and tortured part of the story. It seems like a good idea and that it should be attractive to brands and businesses, but it hasn’t happened—and not for lack of trying on the part of a lot of people.”
The good news is, great Web 3-D is probably coming, and good Web 3-D already exists. For several years, digital agencies have been making 3-D in Flash, mainly using third party code libraries like Papervision and Away3D. But for all its virtues, Flash (and competitor Silverlight for that matter) has a glaring weakness when it comes to 3-D: software rendering. It uses your CPU to generate graphics—which isn’t something it is meant to do or does particularly well. If you want to incinerate swamp rats with a virtual flamethrower (or pick up a realistic boy or girl in a virtual meat market), you need to assign those tasks to your graphics card. This is known as hardware acceleration. Web 3-D advocates burn incense on its altar.
Me In Tru 3D, a microsite by Rokkan for Intel, uses Away3D to power a 3-D Flash application.
Without hardware acceleration, Flash quickly hits what programmers refer to as “the ceiling,” the number of objects and textures you can introduce before a site starts running in quicksand. Flash makes wonderful Legolands—and, let’s face it, who doesn’t love Legos—but making something with a lot of detail can be tricky.
Don’t get me wrong. You can make very cool and realistic 3-D in Flash, so long as you know how to work through the limitations. One strategy is known as pre-rendering. New York agency Rokkan has used the technique for years to create high-quality 3-D Flash Web sites to promote the popular game BioShock. For each new version of the game, it laboriously constructs environments in 3-D software and then renders them out frame by frame—a process that can take days on the machinery at most digital agencies. Make one mistake, leave out one element, and kiss your deadline (and your paycheck) goodbye.
Rokkan created this detailed 3-D environment for BioShock using pre-rendering.
Aside from the anally-retentive project management they require, pre-rendered sites are not terribly interactive. To get a more immersive experience, you have to manipulate 3-D objects in real time. That’s where Papervision, Away3D, and their cousins come in. They contain code that tells the Flash player how to keep track of 3-D objects and display them in 2-D.
Web 3-D shops use these libraries and a variety of tricks to make their experiences run quickly and seamlessly.
Santa Monica-based BLITZ is probably the digital agency most rooted in 3-D technology (all of its designers are required to learn Cinema 4D). When it created an augmented reality music video for John Mayer, it used an old gaming trick to keep Mayer moving and singing. Although he appears 3-D, he’s not; rather he’s a 2-D projection on a flat card inside a 3-D environment. Whenever the camera moves, he continues to face it, leaving the illusion of 3-D, but not forcing the player to account for him in full form. That saves a ton of processing power.
A battery of programming techniques made BLITZ’s John Mayer music video a seamless 3-D Flash experience.