Today I was looking at a still frame of a game, and noticed that all of the shadows were dynamic (created per frame). As we know, shadows can be quite expensive. I was wondering why shadows could not be simply mapped at run time for non moving objects, and then only do dynamic shadows for players, vehicles, etc. What are the advantages/disadvantages of doing this?
- Lightmaps are very large textures. If you have enough processing to make all shadows dynamic you can probably use the memory for something else.
- Non unified lighting model. Some lighting models like deferred don't mix well with prebaked shadows.
- Light mappers are usually very slow. You need to wait few hours to preview lighting changes in the scene.
- You can't pre-bake lights in case that light sources are moving even if everything else the scene is static.
- You can have much higher quality shadows and lighting.
- Faster processing
- Virtually unlimited number of light sources can be used