When the Speed Racer movie came out, I read this fantastic article in VR Magazine about the way they used “pano bubbles” to create backdrops for animated and keyed footage. I’ve had an interest in panoramic photography anyhow (thanks to a friend I’ll call Geo), so I decided to try out the technique just for fun, and to have something new to add to my bag of tricks. Gotta have a bag of tricks!
The panoramic image here (not full rez as shown) was generated by autostitch from 316 photos of the interior of CyberJocks. The source photos were taken with a 75mm equivalent lens (after crop factor) on a 10.2MP camera (the Samsung GX-10). Most of the time that kind of resolution is major overkill for panoramic photography – heck a lot of people will use a lens wide enough to take six images and stitch from those. But, since I was experimenting with a technique that could have application as a cinematic background, I figured I should use all the resolution I can get my hands on, if only to beat up the toolchain and figure out how to do it.
With some fiddling of the settings, autostitch did a bang-up job of stitching the pano together, even though I didn’t use a real pano head on the tripod (this was a spur-of-the-moment exercise). If you look at the full-rez pano you can see some parallax error artifacting but it’s subtle. Good enough for this purpose. Next step: make a pano-bubble!
First, we have to get the pano to be more like a full spherical equirectilinear projection, so we adjust it to a 2:1 aspect ratio by adding black bars.
Opening the ever-handy 3ds MAX, we make ourselves a sphere. Then we make a material, using the equirectilinear projection (I just love saying that word) as a diffuse map, and apply it to the sphere. We also create a free camera at the center of the sphere, and give it a nice wide lens for now. Of course, any of you 3D nerds out there will realize that the camera won’t see the sphere, unless we flip the normals. So, we flip the normals. With a little adjustment of the sphere’s orientation relative to the camera (north pole goes up…), and a flip of the texture map’s V angle to 180 degrees, we now have a camera that can effectively look in any direction “inside” of CyberJocks. Thanks to the stupidly-high resolution that I shot in, we can zoom in quite a bit if need be.
Now to make it come alive! A little more 3ds Max magic gives us a biped dummy, some shadow map materials, and some lights positioned and colored to match the lighting inside CyberJocks – or at least close enough to prove the idea out. I also tweaked the texture map to give the lights some glow and punch, and make the scene overall more realistic. The camera is animated to follow the walking dummy, and since all looks good, we render it out. This time it took two passes – one render of just the pano bubble background, and another of the walking dummy and shadow/alpha. A quick compositing yeilds – omg! a 3d dummy walking around inside CyberJocks! And it looks seamless. I was blown away at how cool this technique is.
[flashvideo file=https://aaronkondziela.com/video/cjspeed.flv image=https://aaronkondziela.com/video/cjspeed.jpg /]
Realize too that this technique limits your camera moves; you have to stay pretty damn close to the center of the pano bubble or the perspective is off and you loose the illusion. In the movie, they made several layers of bubble, just like the oldschool parallax-scrolling in video games. This gave the illusion of more depth and camera motion than there actually was.
Now, just imagine it with a velociraptor animated into the scene, mixed with some keyed footage of real actors! Actors being eaten by the velociraptor! Or perhaps taming it, and making it their friend! Whatever floats your boat, but it can all be filmed “on location” in a pano bubble.