Creating Our Own Skydomes
Add comment!February 19th, 2009
For Overgrowth, we are photo-sourcing all our skydomes. So far, we've been searching sites like cgtextures.com to find these images. This means we are limited to the same small set of decent skydomes that countless other game developers are looking at. We don't want to be limited, and we've noticed that the skies here in Berkeley are often more dynamic than most. So, we decided to look for a way to make our own skydomes.
What we've found is an amazing research project that resulted in a photo-stitching app called Autostitch. Autostitch has several advantages over other means of capturing panoramas. First, unlike heavy duty methods that use motorized mounts, it requires no special hardware (other than a camera) and it's not expensive (in fact, the basic version is free :)). The fact that it's free and easy to use is especially important to us since we want all our tools to be as accessible as possible to modders.
Autostitch also improves over standard software methods for creating panoramas. Most photo-stitching programs can only handle 1D, cylindrical projections. This is great for horizon panoramas, but is not adequate for 2D, spherical skydomes. In addition, photo-stitching apps often require some user interaction; for example, the user may have to arrange the photos in order. Autostitch addresses these two shortcomings. It can handle full hemispherical projections, and it does so entirely automatically. With a handheld camera, we can just haphazardly shoot a bunch of photos all over the sky, and Autostitch does the rest!
This evening, John and I drove up to the Berkeley hills to capture the sunset. Here's how we did it step by step:
Step 1
Take a bunch of photos. Try to evenly cover the entire area you want to capture. No need for a tripod or any special technique.
Step 2
Run Autostitch on the photos. This just takes a few button presses.
Step 3
Edit and extend the panorama to fill in an entire hemispherical sky.
Step 4
Load your new sky into Overgrowth! (Eventually we'll have an easy way to do this. For now, if you'd like to try this in the alphas, you'll have to edit the <sky> tag in the level xml file, and delete the terrain caches.)
Now that we have this technology, I'll be keeping an eye out for interesting skies and capturing them as they come along. I've found this process quite fun. If any of you guys want to help us and try your hand at the process, we'd really appreciate it. Feel free to send us your sky images via AIM / MSN or on the forums.
What do you guys think about this method for creating skydomes?