Mit "Bounces by the BRDF" meine ich, dass Sie zufällige Richtungen in der Hemisphäre auswählen und durch BRDF gewichten und dann über diese Stichproben mitteln. Ich denke, Sie akkumulieren ein Sample pro Frame, also dividieren Sie durch die aktuelle Anzahl von Frames.
Um theoretisch "korrekt" zu sein, sollten Sie diese Proben auch mit gewichten 2π, da dies der Raumwinkel der Halbkugel ist, über die Sie integrieren. Das ist nicht allzu wichtig, wenn Sie nur eine einzige Stichprobenmethode haben, aber wenn Sie mehrere kombinieren, ist es einfacher, sicherzustellen, dass alles konsistent ist, wenn Sie diese Faktoren richtig haben.
Um eine explizite direkte Lichtabtastung zu ermöglichen, müssen Sie dann von der Lichtabtastwahrscheinlichkeitsdichte in die Raumwinkelwahrscheinlichkeitsdichte am Empfängerpunkt konvertieren. Wenn die Lichtproben über die Fläche der Lichtquelle gleichmäßig sind, dann anstelle der einfachen2π Gewicht, würden Sie stattdessen diesen Gewichtsfaktor verwenden:
Ar2(Nlight⋅−L)
wo
A ist der Bereich der Lichtquelle,
r ist der Abstand zwischen dem Empfängerpunkt (Strompfadpunkt) und dem gewählten Lichtquellenpunkt,
Nlight ist die Normalen des Lichtpunktes und
L ist der Einheitsvektor vom Pfadpunkt zum Lichtpunkt.
Dieser Faktor erklärt, wie dicht die abgetasteten Lichtquellenpunkte im Raumwinkel des Empfängerpunkts sind und sowohl mit der Entfernung als auch mit dem Winkel auf der Oberfläche der Lichtquelle variieren (die Punkte bündeln sich in Bereichen, in denen die Quellenoberfläche von der abfällt) Empfänger, z. B. um die Ränder eines sphärischen Flächenlichts).
Nach der Gewichtung mit diesem Faktor befinden sich die Direktlicht-Samples im gleichen Raumwinkelbereich wie die BRDF-Samples. Sie können sie also einfach addieren und durch die Gesamtzahl der Samples dividieren. Wenn Sie dies tun, wäre dies jetzt doppelt so viele Frames Ich mache eine BRDF-Probe und eine Lichtprobe pro Frame.
Es ist auch wichtig, die Beleuchtung des Lichts nicht doppelt zu zählen. Da Sie die Lichter jetzt explizit abtasten, müssen Sie sicherstellen , dass Sie die emittierende Farbe nicht einschließen, wenn Sie während der BRDF-Abtastung zufällig auf ein Licht treffen! Andernfalls würden die Lichter doppelt so hell erscheinen, wie sie sollten.
Eine Verfeinerung davon ist, dass Sie möglicherweise eine explizite Lichtabtastung nur auf den diffusen Teil des BRDF und nicht auf den spiegelnden Teil anwenden möchten. Ein schmales spiegelndes Highlight wird besser durch die Wichtigkeitsabtastung des BRDF behandelt. Dies bedeutet, dass Sie bei expliziten Lichtproben nur die diffuse Komponente des BRDF bewerten und dann, wenn Sie eine Lichtquelle durch einen Spiegelreflexionsstrahl treffen, deren emittierende Farbe dort einschließen würden .