(Echtzeit-) Startpunkt der globalen Beleuchtung [geschlossen]

10

Welche Techniken sollte jemand beachten, wenn er in die globale Echtzeitbeleuchtung einsteigt (für dynamische Beleuchtungsszenarien)?

Es ist schwierig, die verschiedenen genannten Techniken wirklich in den Griff zu bekommen, ohne etwas über das Thema zu wissen. Wenn ich GI in meine Grafik-Engine integrieren wollte, wo sollte ich als Basis mit dem Lesen beginnen? Welche Algorithmen können in einem angemessenen Zeitrahmen von einer neuen Person implementiert werden (dh kein hochspezialisierter Algorithmus, der über Monate hinweg nur geringe Leistung erbringt) und welche sind derzeit noch nicht vollständig veraltet (dh direkt durch etwas einfach Schöneres und Schnelleres ersetzt)?

Die Photonenkartierung scheint sehr häufig zu sein, und ich habe über Dinge wie die Verfolgung von Voxelkegeln und spezifischere Algorithmen gelesen, z. B. über diese in CryEngine 3 verwendete Technik . Wenn man jedoch so gut wie nichts über das Feld weiß, ist es schwer zu entscheiden, wo man anfangen soll.

Welche allgemeinen Techniken sind einen Blick wert?

TravisG
quelle
Suchen Sie speziell nach dynamischer globaler Beleuchtung? Es gibt viele gut verstandene und dokumentierte Algorithmen für statische (auch als vorberechnete) globale Beleuchtung, aber ich habe das Gefühl, dass Sie nicht nach solchen suchen.
Chewy Gumball
1
Diese Frage ist zwar ein interessantes Thema, aber im Wesentlichen ein "Was als nächstes zu lernen ist" und hat nicht wirklich eine richtige Antwort. Stattdessen sehe ich nur eine Liste von Themen (von denen ich glaube, dass sie genau das sind, wonach Sie suchen). Es ist sicherlich ein cooles Thema, aber es ist ein Diskussionsthema und wahrscheinlich nicht für die Site geeignet.
MichaelHouse
1
Eine Frage nach dem aktuellen Stand der Technik wäre zeitlich stark lokalisiert.
1
9 Upvotes und geschlossen? Sind Sie im Ernst? @ Byte56
ashes999
1
@JoshPetrie Vielleicht als Stand der Technik formuliert, aber diese Frage hat das Potenzial, sehr nützliche Antworten zu haben, und der Grund für die Schließung scheint eher oberflächlich zu sein.
Chewy Gumball

Antworten:

6

Warum schaust du nicht in meine MSc-Arbeit ?

Das Ergebnis war anscheinend zu hart für SIGGRAPH, um es zu akzeptieren (sie lehnten mein Papier ab), und ich habe mich keinen anderen Konferenzen unterworfen. Aber es bietet immer noch eine gute Einführung in GI, geschrieben in typischer Bobobobo-Verständlichkeit (tatsächlich gehen einige Abschnitte etwas zu tief, aber hey).

Sie sollten sich Abschnitt 2.4 ansehen, der sehr schnell und mit Referenzen einige der neueren Echtzeit-Gi-Algorithmen durchläuft, einschließlich

  • Echtzeit-Raytracing
  • Echtzeit-Radiosität (erleuchten / bf3)
  • verzögerte Schattierungs- und Bildschirmplatzmethoden (ssdo, ssao)
  • vorberechnete Strahlungsübertragung und sphärische Harmonische

Das ist alles, was ich in meiner Umfrage bekommen habe. Haftungsausschluss, dass ich etwas verpasst habe.

Wie auch immer, Sie haben wirklich keine Hoffnung, all dies in 3 Monaten umzusetzen. Ich würde sagen, wählen Sie eine und arbeiten Sie damit. Echtzeit-Raytracing ist für mich bei weitem das aufregendste , weil es eine echte Gi-Methode ist. Im Gegensatz zu Screen-Space-Methoden ist rtrt kein "Hack" - es leidet nicht unter seltsamen Effekten, die ssdo hat:

Geben Sie hier die Bildbeschreibung ein

Bobobobo
quelle
> Wie auch immer, Sie haben wirklich keine Hoffnung, all dies in 3 Monaten umzusetzen. Ich würde sagen, wählen Sie eine aus und arbeiten Sie damit. <Das ist enttäuschend. Ich bin mir nicht sicher, wie ich mich einem einzelnen Algorithmus auf eine Weise nähern würde, die eine Bachelorarbeit wert ist. Ich denke, es ist bei weitem nicht genug, es nur zu implementieren, um zu sehen, wie es aussieht. Und ich glaube nicht, dass ich in der Lage bin, meine eigenen Verbesserungen an einem bestimmten Algorithmus zu entwickeln (ich weiß nur nichts über das Gebiet). Zumindest möchte ich nicht riskieren, noch 6 Monate damit zu verbringen.
TravisG
Sprechen Sie mit Ihrem Vorgesetzten. Haben Sie schon einmal einen Raytracer geschrieben? Das Herzstück eines dieser Geräte ist normalerweise ein Raytracer. Die Photonenkartierung "parkt" Photonen in der Szene (indem im Wesentlichen Strahlen von der Lichtquelle in die Szene geworfen werden), und danach wird die Szene strahlenverfolgt. Ich denke ehrlich, RTRT ist der beste Kandidat, da es nicht allzu schwierig ist, einen einfachen Raytracer aufzubauen, und Sie können Funktionen hinzufügen / schneiden, wenn es die Zeit erlaubt. Mit einigen der fortgeschritteneren Algorithmen (wie dem von Ihnen verknüpften) sind sie sehr kompliziert und weisen eine hohe Eintrittsbarriere auf.
Bobobobo
Dieses von evan erstellte Beispiel ist ein gutes Beispiel für die Ausführung von rtrt in Ihrem Browser.
Bobobobo