Shadows play an important role in real-time rendering; they add depths to a rendering scene. The perceived light information on the 3D object looks much more realistic when rendered with shadows. Overall, shadows improve the realism of the rendering scene and provide a spatial relationship among objects. Rendering smooth and realistic shadows is a great topic of research in the field of computer graphics. The rendering process consumes a large performance. Therefore, the approach to render it must be a balanced trade-off between quality and performance. This even becomes more challenging on the embedded-side due to limited constraints on the memory and performance.
In this chapter, we will implement shadows using shadow mapping. This technique is relatively cheap as far as performance is considered and produces good results on embedded devices. We will make these shadows appear smoother using another technique called percentile closer filtering (PCF). In another technique called...