Schatten (Computergrafik)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Computergrafik mit schattenwerfenden Objekten

Schatten in der Computergrafik dienen zur Verankerung von Objekten in einer Szene. So kann man Aussagen über die Lage der Objekte in der Szene machen (Tiefe, Abstand zur Fläche). Weiterhin wird durch einen Schatten die Richtung der Beleuchtung hervorgehoben.

Man unterteilt den Schatten in Kernschatten (Umbra) und Halbschatten (Penumbra). Der Kernschatten ist der zentrale, deutlich abgegrenzte dunkle Teil im Zentrum, der Halbschatten das hellere den Kernschatten umgebende Gebiet. Letzterer ist sehr aufwendig zu berechnen, weshalb man beim Echtzeitrendern fast ausschließlich Punktlichtquellen einsetzt, die nur den Kernschatten generieren.

Eine andere Möglichkeit besteht darin, die Projektion eines schattenwerfenden Objekts von der Lichtquelle auf eine Ebene zu berechnen.[1] Um weiche Schatten zu rendern, kann eine flächige Lichtquelle durch mehrere Punktlichtquellen ersetzt werden; der resultierende Schatten ist die Summe der Schatten dieser Lichtquellen.[2] Ebenfalls möglich ist es, einen harten Schatten zu verwischen[3] oder Farbverläufe[4] zu zeichnen. Zum Rendern von harten Schatten können auch sogenannte Shadow Volumes verwendet werden.[5] Eine weitere Möglichkeit sind Shadow Maps.[6] Dabei wird die Szene in einen Z-Buffer aus der Sicht der Lichtquelle (Shadow Buffer) gezeichnet, sodass dieser die Distanz zu den nächsten beleuchteten Objekten enthält. Durch den Vergleich der Tiefeninformation im normalen Z-Buffer mit der Tiefeninformation im Shadow Buffer lässt sich ermitteln, ob ein Punkt im Schatten liegt.

Um die Schatten realistisch, also nach physikalischen Modellen, zu berechnen, wird viel Zeit benötigt. Beispiele für Algorithmen zum Erzeugen von fotorealistischen Schatten sind Diffuses Raytracing oder Radiosity.

Literatur[Bearbeiten]

  • David Rogers: Procedural Elements for Computer Graphics, S. 502−517. WCB/McGraw-Hill, Boston 1998, ISBN 0-07-053548-5
  • Tomas Akenine-Möller, Eric Haines: Real-Time Rendering, S. 248–276. AK Peters, Natick, Mass. 2002, ISBN 1-56881-182-9

Einzelnachweise[Bearbeiten]

  1. Thant Tessman: Casting Shadows on Flat Surfaces. IRIS Universe 16 (Winter 1989): 16–19, ISSN 1061-6608
  2. Paul Heckbert, Michael Herf: Simulating Soft Shadows with Graphics Hardware. Technical Report CMU-CS-97-104, Carnegie Mellon University, Jan. 1997 (Online)
  3. Cyril Soler, François Sillion: Fast Calculation of Soft Shadow Textures Using Convolution. In SIGGRAPH ’98 Proceedings, S. 219–230. ACM, New York 1998, ISBN 0-89791-999-8 (Online)
  4. Eric Haines: Soft Planar Shadows Using Plateaus. Journal of Graphics Tools 6, 1 (Sep. 2001): 19–27, ISSN 1086-7651 (PDF, 330 KB)
  5. Franklin Crow: Shadow Algorithms for Computer Graphics. ACM SIGGRAPH Computer Graphics 11, 2 (Summer 1977): 242–248, ISSN 0097-8930
  6. Lance Williams: Casting Curved Shadows on Curved Surfaces. ACM SIGGRAPH Computer Graphics 12, 3 (Aug. 1978): 270–274