Deep Opacity Maps
Comparison of our deep opacity maps method to previous hair shadowing techniques. Layering artifacts of Opacity Shadow Maps are visible even with 128 layers, while Density Clustering has artifacts due to inaccuracies. Deep Opacity Maps with only 3 layers can generate an artifact free image with the highest frame rate. Click on the image to enlarge.
This is a new method for rapidly computing shadows from semi-transparent objects like hair. Our deep opacity maps method extends the concept of opacity shadow maps by using a depth map to obtain a per pixel distribution of opacity layers. This approach eliminates the layering artifacts of opacity shadow maps and requires far fewer layers to achieve high quality shadow computation. Furthermore, it is faster than the density clustering technique, and does not have the inaccuracy artifact that density clustering produce. We provide qualitative comparisons to these previous methods and give performance results. Our algorithm is easy to implement, faster, and more memory efficient, enabling us to generate high quality and artifact-free hair shadows in real-time using graphics hardware on a standard PC.
This figure explains why deep opacity maps with a far fewer number of layers perform better than opacity shadow maps. Unlike opacity shadow maps method which uses regular slices of geometry as layers (left image), deep opacity maps method uses layers that fit the shape of the hair volume (right image), and ensures that the direct illumination coming straight to the hair strands (without any shadow) is captured correctly.
Here are two more hair models rendered in real-time using OpenGL and custom hair shaders with deep opacity maps shadows (3-layers).
A hairy teapot model rendered in real-time with deep opacity maps shadows (3-layers) and shadow maps for polygonal shadows.
This video shows the difference between opacity shadow maps and deep opacity maps. You will see that layering artifacts of opacity shadow maps are much more apparent in animated sequences.
This video shows the difference between opacity shadow maps with 128 layers and deep opacity maps. When 128 layers are used with opacity shadow maps, layering artifacts become less visible (but not totally eliminated) while the performance drops to only a few frames per second.
This video compares density clustering to deep opacity maps. Density clustering suffers from inaccuracy artifacts, while deep opacity maps produce an artifact-free image with higher frame rates.
A hairy teapot model captured in real-time with deep opacity maps shadows (3-layers) and shadow maps for polygonal shadows.
Clustered geometries are the most difficult models for deep opacity maps. This video shows that deep opacity maps can generate high quality shadows even with such models.