Registriert: Di Feb 25, 2003 15:10 Beiträge: 147 Wohnort: Koblenz a. Rhein
Hi !
also ich hab folgendes Problem:
ich will auf jeden fall dynamische schatten. so
1.ich könnte doch statische lightmaps benuutzen und darüber einen dynamischen Schatten legen. ( 3 texturen -> nich alle grakas aber das muss dann schon drin sein ! )
2. 3D-Texturen dann hätte ich dynamisches Licht, das flüssig läuft ( aber auch hier erst ab GF3. naja... wenns denn nich anders geht )
3. hmm ihr seid dran oder sagt einfach was ich von 1. und 2. haltet
Ergebnis sollte sein:
- Licht ( das evtl. flackern kann (was ja auch mit statischen Lightmaps geht ))
- Schatten ( also soll das Licht unterbrochen werden können )
cya und thx !
_________________ mir fällt kein Spruch mehr ein für meine Signatur naja...
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Oja...dynmische Schatten Neben dem Lightmapping gehören in Echzeit berechnete dynamische Schatten mit zum heiligen Gral der 3D-Grafikprogrammierung und bringen so manchen (auch erfahrenen) OpenGL'ler in arge Bedrängnis.Die Sache mit den 3D-Texturen kannst du natürlich nicht nutzen um dynamische Schatten zu realisieren, aber ich zähl mal kurz alle Techniken auf, die man zur Realisierung eben solcher nutzen kann :
Projeziertes Shadowmapping : Man rendert alle Objekte mit der Schattenfarbe vom Blickpunkt des Lichtes aus in eine Textur und projezierte diese dann unter Nutzung von OpenGLs automatischer Texturkoordinatengenerierung später auf die Szene.
Vorteile : Einfach zu implementieren, recht schnell
Nachteile : Nur gerichtete Lichtquellen möglich, Probleme wenn Lichtquelle zu nahe an den Objekte, Schattenqualität hängt von der Texturengröße ab, die wiedderrum die Geschwindigkeit bestimmt.
Dazu gibts übrigens ein Demo+Sourcecode auf meiner HP.
Planares Shadowmapping via Stencilpuffer : Man nutzt den Stencilpuffer und eine feste Schattenmatrix und projeziert die Schattten unter Zuhilfenahme des Stencilpuffers (damit diese sich nicht überlappen) auf eine feste Ebene (X,Y oder Z).
Vorteile : Sehr schnell, sehr sehr einfach zu implementieren
Nachteile : Schatten sind nur planar, d.h. auf einer Fläche und "winden" sich nicht um Objekte, keine weichen Schatten
Diese Technik wird momentan in NapalmBomber3D genutzt.(und ist dafür auch ausreichend)
Volumetrische Schatten mittels Stencilpuffer : Die Möglichkeit die Werte des Stencilpuffers zu verändern wird genutzt um bestimmte Bereiche des Bildschirms in Schatten zu hüllen.
Vorteile : Sehr realistisch, klappt für alle Arten von Lichtquellen
Nachteile : Sehr sehr schwer zu implementieren (verdammt viel Mathematik), erorfdert oft mehrere Renderdurchläuft, keine weichen Schatten (nur sehr aufwändig möglich)
Wird in DOOM3 genutzt...
Registriert: Di Feb 25, 2003 15:10 Beiträge: 147 Wohnort: Koblenz a. Rhein
hi, das volumetrische sieht echt hammer geil aus is aber nich gut... zu laam für derzeitige standarts....
is würde da eher das shadow mapping ( oder depth mapping ) nutzen oder ? is doch auch dynamisch oder ?
EDIT:
oder für spieler volumetrische und für objekte staische oder hald shadow/depth mapping....
EDIT2:
haB da was ganz außer Acht gelassen...
für das mapping brauch man ja denk ich ma ne Textur....
dann is es ja mehr oder weniger nich mehr dynamisch..
wenn der spieler den arm het etc.. was dann ?
cya
_________________ mir fällt kein Spruch mehr ein für meine Signatur naja...
Zuletzt geändert von NiGhTmArE am Do Jul 31, 2003 18:46, insgesamt 1-mal geändert.
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Das Shadow(depth)-Mapping dynamisch ist hab ich doch oben bereits erwähnt (projeziertes Shadowmapping).
Allerdings hab ich dort auch gleich die drei größten Nachteile genannt :
- Du kannst damit nur gerichtete Lichtquellen realisieren (Punktlichter z.B. nur sehr sehr umständlich).
- Je nach "Schattenlänge" und gewählter Größe für die Schattentextur sehen sind die Schatten sehr grob.
- Sobald ein Objekt das Frustum der gerichteten Lichtquelle irgendwo verletzt, passt dieses Objekt nicht mehr ganz auf die Textur, weshalb es dann ganz hässliche Effekte aufgrund des Textureclampings gibt.
Alle oben genannten Effekte lassen sich in meinem Shadowmapping-Demo "begutachten".
Welche Methode du für dynamische Schatten nutzt, musst du also je nach Anwendungsfall selbst entscheiden, ich persönlich würde aber ne Mischung aus dynamisch und statisch nehmen.Denn statische Schatten einfach aus Bequemlichkeit immer dynamisch zu berechnen wird sich auch in der Geschwindigkeit deiner Anwendung stark negativ bemerkbar machen.
Registriert: Di Feb 25, 2003 15:10 Beiträge: 147 Wohnort: Koblenz a. Rhein
gut eine Mischung ist akzeptabel... aber womit...
statisch... gut wohl gemappt....
dynamisch.. ja... volumetrisch scheint rechnerich echt schwer zu sein..
sieht aber krass aus.... und planar sieht schlecht aus
also.... mhh
also die lichtquellen wären bis auf das mündungsfeuer alle statisch...
also könnte auch projeziert werden...
( die 200 m/s sieht eh keiner ..oder ... screenshot .. hmm )
_________________ mir fällt kein Spruch mehr ein für meine Signatur naja...
Mitglieder in diesem Forum: Bing [Bot] und 17 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.