PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenGL: Schatten werfen


aths
2003-05-23, 12:45:23
Vorgeschichte: Wir sollten für das Fach "Grundlagen der grafischen Datenverarbeitung" in OpenGL ein fertiges Framework nutzen, welches einen routierenden Würfel rendert, und da ein "Dach" raufsetzen. Dieses simple "Haus" soll in späteren Lektionen noch beleuchtet und um eine Textur erweitert werden.

Xmas musste natürlich unbedingt schon jetzt sowohl Texturen als auch Beleuchtung machen, inkl. anderer Dinge, und da man bei OpenGL den Xmas ziemlich effektiv ausfragen kann, hab natürlich auch ich schon ein Haus mit Texturen und sogar etwas "Drumherum" (Zaun, Baum) fertig, ebenfalls, ohne das vorgefertigte Framework zu benutzen.

Diese Angeberei, äh, Vorgeschichte hat mit der eigentlichen Frage _nichts_ zu tun.

Der Prof meinte nun, da wir schon alles gemacht hätten, was da sonst erst eigentlich noch kommen sollte, sollten wir doch mal nicht nur beleuchten, sondern auch Schatten werfen. Es darf auch ein einfacherer Körper sein.

Tja. Schatten werfen. Hm. Wie geht man da ran?

Demirug
2003-05-23, 13:04:01
Das kommt davon wenn man angibt. Angeben = Mehrarbeit.

http://developer.nvidia.com/view.asp?IO=docs_shadows

Have Fun.

Abe Ghiran
2003-05-23, 13:35:07
Hi!

Emil Persson aka Humus hat auf seiner Homepage (http://esprit.campus.luth.se/~humus/) mehrere Demos von Echtzeit Schatten mit OpenGL inklusive Sourcecode.
Sicherlich auch mal einen Blick wert, gerade wenn es dann ans implementieren geht.

Grüße, Jan

Pitchfork
2003-05-23, 15:26:35
Meint ihr nicht, daß für einen eher unerfahrenen Coder (und das scheint aths zu sein), Shadow Maps oder gar die Demos von Humus "etwas" overkill sind? Warum nicht erstmal was leichteres, da wir doch wissen, daß ein relativ simples Objekt auf eine Ebene projiziert werden soll => drop shadows.
Eine Übersicht über Schattenverfahren gibt es hier: http://www.ce.chalmers.se/staff/tomasm/publications.html
Dort sind auch Drop Shadows beschrieben.

Pitchfork

Xmas
2003-05-23, 17:57:52
Originally posted by Pitchfork
Meint ihr nicht, daß für einen eher unerfahrenen Coder (und das scheint aths zu sein), Shadow Maps oder gar die Demos von Humus "etwas" overkill sind? Warum nicht erstmal was leichteres, da wir doch wissen, daß ein relativ simples Objekt auf eine Ebene projiziert werden soll => drop shadows.
Eine Übersicht über Schattenverfahren gibt es hier: http://www.ce.chalmers.se/staff/tomasm/publications.html
Dort sind auch Drop Shadows beschrieben.

Pitchfork
Ich glaube nicht dass sich aths so einfach mit Drop Shadows zufrieden geben wird ;)
Stencilschatten quick & dirty (oder besser: slow & dirty) sind gar nicht mal so schwer, vor allem wenn die Geometrie eh sehr limitiert ist.
Allerdings funktionieren Stencilschatten bei der Vegetation nicht. Shadow Buffers würden funktionieren, sind aber herstellerspezifisch.

loewe
2003-05-23, 19:48:21
Ihr kommt doch an der Hochschule sicher auch an die eine oder andere Computerzeitschrift?!

Im PC Magazin sind im Jahr 2002 zwei gute Artikel zu geneu diesem Thema erschienen und zwar

1. Licht im Schatten von Carsten Dachsbacher in der 6/2002
- Stencil Schatten unter OpenGL

2. Im Scheinwerferlicht von Carsten Dachsbacher in der 11/2002
- Shadow Depth Maps mit OpenGL

Kann ich beides nur empfehlen.

aths
2003-05-24, 07:49:27
Äh, ich glaube, da beschäftige ich mich zunächst doch erst mal mit einer Skybox...

Frank
2003-05-24, 11:32:10
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=27

?

aths
2003-05-24, 13:19:45
Originally posted by Frank
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=27

? Nehm ich mal unter die Lupe, wenn ich wieder Zeit für OpenGL habe :naughty:

micki
2003-05-26, 15:29:27
shadowmaps mit "priority buffern" (siehe ATI paper) laufen auf allen grakas ;) (sind einfach zu implementieren finde ich)

MfG
micki