ich bastle zur Zeit ein wenig mit StencilShadows rum... ich habe das ganze in etwa nach dem vorbild von nehe.gamedev.net lektion 27 gelöst.
Also schauen welche Faces in richtung Licht zeigen und von denen dann das ShadowVolume zeichnen etc...
Nur, diese methode ist zwar so für kleiner dinge ganz praktikabel, allerdings hab ich jetzt ein anderes problem...
Da, wo ich die Shadows eigentlich einsetzen möchte zeichne ich alle objekte als VBOs... aber ich muß ja bei der Schattenmethode jedes faces überprüfen ob es zum licht zeigt und auch nur dann zeichnen...
Ich hab es jetzt so gelöst das ich nen IndexVBO erstelle in dem die Faces aufgelistet sind welche zum licht zeigen, aber irgendwie scheint mir das nicht unbedingt die beste lösung...
Hat evtl jemand eine andere/bessere methode um Stencil Shadows zu erzeugen???
inwiefern das...??
CullFace ist doch nur dazu da um faces die mit ihrer normal von der Camera wegzeigen nicht zu zeichnen... Was hilft mir das für's licht??? *guckt unsicher*
Registriert: Mi Jul 17, 2002 12:07 Beiträge: 976 Wohnort: Tübingen
Also Culling hat mit Beleuchtung ja nix zu tun. Es kann ja durchaus Objekte geben, die Schatten werfen, und dabei nicht im Bild sind.
_________________ "Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0." - Hal Faber Meine Homepage: http://laboda.delphigl.com
irgendwie verstehe ich noch immer nicht wirklich wie du das meinst...
beim NeheCode wird es ja in zwei schritten gemacht:
1.) Das komplette SchattenVolumen in den StencilBuffer schreiben
2.) Culling aktivieren und alle rückseiten wieder aus dem StencilBuffer entfernen..
Dadurch bleibt nur der wirkliche schatten übrig.
Problem bei der sache ist nur, das ich zum schattenwerfen nur die Flächen benutzen darf welche in richtung licht zeigen, da sonst bei schritt 2. zuviel vom Buffer wieder enfernt wird.
Und daher dachte ich es gibt evtl eine andere/bessere methode..
Registriert: Mi Dez 15, 2004 20:36 Beiträge: 454 Wohnort: Wien, Österreich
Ich weiss nicht wie du deine Vetrices organiziert hast, aber ich denke mal du könntest mal perFace tests ausführen und zwar wie oben schon erwähnt, mit einem billigen DotProduct. Sollte dies positiv sein so schickst du dein Face durch shadow matrix pipeline sonst nicht.
_________________ "Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump
Ich weiss nicht wie du deine Vetrices organiziert hast, aber ich denke mal du könntest mal perFace tests ausführen und zwar wie oben schon erwähnt, mit einem billigen DotProduct. Sollte dies positiv sein so schickst du dein Face durch shadow matrix pipeline sonst nicht.
Ja, wie gesagt so mache ich es doch zur Zeit... ich finde es halt nur nach wie vor recht umständlich jedes face zu überprüfen ob es zum licht zeigt...
Ich wollte ja lediglich wissen ob es noch andere gute methoden gibt um via StencilBuffer schatten zu erzeugen...
Ich mache es so, dass jedes Objekt ein optionales Mesh hat, das dann im PC-Speicher liegt. Das hat den Vorteil, dass dieses auch vereinfacht sein kann, sodass Physikberechnungen und Schattenwurf mit wenigen Polygonen realisiert werden, das tatsächliche Rendern dann mit vielen.
Das funktioniert dann am Besten, wenn der Schattenwurf eines Objektes auf sich selbst nicht perfekt sein muss.
Mitglieder in diesem Forum: 0 Mitglieder und 2 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.