Eine der aufwendigsten Aufgaben bei 3D Programierung in C++ C sind Schatten in OpenGL und DirectX!Schatten (Shadow) werden oft bei der Entwicklung mit Schattierung (Shading) verwechselt, obwohl Sie zusammen für den Eindruck der 3D Landschaft verantwortlich sind, ist die Schattierung jedoch deutlich einfacher als Komplexe Schatten-Berechnung und die Entscheidung ob Mapping oder Echtzeit Schatten-Berechnung sowie die Frage wann macht was Sinn! Hier in diesem FAQ werde ich Informationen zum Thema 3D Schatten zusammenfassen und erweitern! Inhalt: 1.) ... Der Schatten und Schattierung Unterschied Shadow vs Shadow!
|
(Bild-1) Schatten vs Schattierung |
![]() |

2.) Beispiel 1 Schattierung mit getestetem Quell-Code!
Das Beispiel Links im Bild: ► OpenGL 2.1 - GLSL shadow cube mapping
Das Schatten-Beispiel Rechts: ►► OpenGL 2.1 - Fast realistic soft penumbra shadows
Ein Weiteres vom Gleichem Autor: ►► Software shadow mapping << Recht interessant da Software ;-)
Info:
Alle Drei Projekte habe ich getestet man kann es mit Jedem Visual Studio 2008, 2017, ... Compilieren (Erstellen) ja sogar mit dem altem VC 6.0. Das "Fast realistic .. " stürzt ab, im Quellcode "Pause = true;" setzen! Die Quellcodes sind ganz unten auf der jeweiligen Seite Downloadbar!
Alle Drei Projekte habe ich getestet man kann es mit Jedem Visual Studio 2008, 2017, ... Compilieren (Erstellen) ja sogar mit dem altem VC 6.0. Das "Fast realistic .. " stürzt ab, im Quellcode "Pause = true;" setzen! Die Quellcodes sind ganz unten auf der jeweiligen Seite Downloadbar!
(Bild-2) 3D C++ C Schatten in OpenGL! |
![]() |

3.) Das klassische Shadow Beispiel von OpenGL!
1. Drehwürfe mit dynamischem Schatten (läuft auch im Farbindexmodus!).
Seite ►►OpenGL - Examples Quellcode: ► scube.c
2. Das Klassische, springender Dino mit schatten als Beispiel
Seite: ►... opengl.org ...archives ... examples/examples.html Quellcode: ►► dinoshade.c
3. Ein weiteres mit *.obj Dateien und Schatten! Weiche Schatten in Echtzeit. Drücken mit der 'h' Taste erscheint ein Hilfemenü. Ziehen Sie die mittlere Maustaste, um die Szene zu drehen.
Download: ► shadow.zip Seite: ... www.opengl.org/archives/resources/code/samples/more_samples/
(Bild-3) Klassisch Schatten Beispiele mit OpenGL! |
![]() |

X.) Wozu diese Seite und weitere Links und Infos zu Schatten und Schattierung!
Die Seite wird Regelmäßig erweitert! Es gibt im Internet viele, die hier ausgewählten sind aber geeignet um es zu verstehen und habe wenig Ballast! Es ist zumeist so das man Etliche MB von Quellcode Runterladen tut und es ist schlecht geeignet um den Sin, Funktionsweise, ... zu verstehen!
►► OpenGL - Warum Schatten?
►► OpenGL - Was sind Shader?
►► .. learnopengl.com/Advanced-Lighting/Shadows/Shadow-Mapping
►► ... Super Mario 64 << par Effekte und viel Quellcode als ein beispiel bedingt nutzbar!
Wird auch erweitert!
Random number generator:
►► https://www.shadertoy.com/view/tsf3Dn
►► https://www.shadertoy.com/view/4slGD4
►► https://www.shadertoy.com/view/4ttSWf!
►► https://wiki.delphigl.com/index.php/Shadersammlung!
(Bild-4) Shader in OpenGL GLS |
![]() |

FAQ 31: Aktualisiert am: 15 April 2021 13:36