Schwärzler, M. (2009). Accurate soft shadows in real-time applications [Diploma Thesis, Technische Universität Wien]. reposiTUm. http://hdl.handle.net/20.500.12708/184821
In dieser Diplomarbeit wird die Berechnung und Verwendung von weichen Schatten in Anwendungen der Echtzeitgraphik behandelt.Während harte Schatten bereits häufig in Spielen und Programmen eingesetzt werden, ist die Verwendung von weichen Schatten, die anstelle von Punktlichtquellen von Flächenlichtquellen erzeugt werden, aufgrund der viel höheren Berechnungskomplexität noch eher selten und stellt deshalb auch immer noch ein aktives Forschungsgebiet dar. Der Mehraufwand, den die Verwendung von weichen Schatten mit sich bringt, lohnt sich aber dennoch: Beinahe jeder Schatten, den wir in unserem alltäglichen Leben vorfinden, ist weich, weshalb wir computergenerierte Bilder mit weichen Schatten als sehr viel realistischer wahrnehmen. Nach einer Erklärung, was weiche Schatten sind, warum sie auftreten, und welche Schwierigkeiten sich bei ihrer Berechnung ergeben, werden aktuelle Algorithmen vorgestellt, die in der Lage sind, weiche Schatten in Echtzeit zu berechnen. Sie basieren stets auf einem der beiden bekanntesten Algorithmen für harte Schatten, shadow mapping oder shadow volumes, und wurden auf verschiedenste Arten und Weisen erweitert, um die Generierung von weichen Schatten zu ermöglichen. Dennoch ist es mit keinem der vorgestellten Methoden möglich, für beliebige Szenen physikalisch korrekte weiche Schatten in Echtzeit zu erzeugen: Sie sind entweder zu langsam, oder approximieren die Schatten nur. Wir stellen deshalb einen neuen Ansatz vor, der mithilfe von Temporal Coherence die Berechnung von physikalisch korrekten weichen Schatten ermöglicht: Durch die Generierung einer einzigen shadow map pro Frame, die jeweils von einer anderen, zufälligen Stelle der Flächenlichtquelle erzeugt wird, sowie der Verwendung eines sogenannten shadow buffers, der die bisherigen Schattenergebnisse speichert, ist es möglich, exakte weiche Schatten zu berechnen, und dabei überzeugende Bildwiederholraten zu erreichen.
In this thesis, the generation and use of soft shadows in real-time rendering is discussed. While hard shadow algorithms are already widely used in games and applications, the fast and correct calculation of soft shadows, which are not cast by a point light source but by an area light source, is a complex task and still an area of active research. The simulation of soft shadows is worth the increased effort, though: Nearly every shadow in reality has soft boundaries, so using soft shadows in rendering applications significantly increases the realism of the generated images. After giving an explanation on where soft shadows come from and what problems occur during their computation, current real-time soft shadow algorithms are presented and discussed. Nearly all of them are based on either the shadow mapping or the shadow volumes algorithm, which are extended in various ways to work together with area light sources. Still, none of them is able to compute physically correct soft shadows in real-time for arbitrary scenes: Either the calculation takes too long, or the soft shadow is only approximated. Thus, we suggest a new approach, which uses Temporal Coherence between frames in order to generate physically accurate soft shadows: By generating only a single shadow map each frame from a different, random sampling position on the area light source and storing the shadowing information in a screen space shadow buffer, it is possible to compute exact shadows while achieving frame-rates as high as in single-sample fake approaches.