Our biggest design goal for the Overgrowth editor is to achieve high-quality graphics with a minimum production time. This not only includes the time to create the level, but also any preprocessing steps we might have, such as lightmap calculation. To keep the lightmap calculation fast, we’re using a hybrid system of traditional texture baking and modern depth-map shadows.
By baking the depth-map shadows to a texture, we can render them at higher resolution, and thus eliminate most of the common depth mapping artifacts. Using modern GPU features like frame buffer objects, this can all be done in real-time. Also, because we are saving the lightmaps as a compressed texture, older video cards should be able to load the detailed shadows even if they would be unable to calculate them efficiently.
There is still a lot of work to do, but the direct lighting system is almost done. After we finish the ambient occlusion pass, we should be done with static environment shadows!(permalink)