Nutzen Sie die Raytracing-Fähigkeiten von Unitys HDRP mit NVIDIA.

Registrieren Sie sich auf der NVIDIA-Website, um am Live-Webinar teilzunehmen. Es beginnt um 10:00 Uhr Pazifischer Zeit am Mittwoch, den 27. Januar 2021, und wird etwa eine Stunde dauern. Wenn Sie nicht teilnehmen können, haben Sie die Möglichkeit, die Sitzung später on-demand anzusehen.
Alle Teilnehmer des Live-Webinars nehmen an einer Verlosung teil, um die Chance zu haben, eine (1) NVIDIA® Quadro RTX™ 5000 zu gewinnen! Sie müssen sich jedoch registrieren und das gesamte Live-Webinar besuchen, um teilnahmeberechtigt zu sein.
Für Beleuchtungsszenarien besteht Raytracing darin, Strahlen von den Kameras oder Oberflächen zu anderen Oberflächen und Lichtstrukturen zu senden, insbesondere außerhalb des Kamerablicks, um die Beleuchtung zu erzeugen. Die Filmproduktion und hochwertige Visualisierungen nutzen Raytracing umfassend. Bis vor kurzem machte die Menge an Rechenleistung, die erforderlich war, um solche Bilder mit einer angemessenen Bildrate zu rendern, diese Technik jedoch unbrauchbar für Echtzeitanwendungen. Infolgedessen wurde in Spielen seit Jahrzehnten eine alternative Methode verwendet: Rasterisierung. Einfach ausgedrückt besteht es darin, die Pixel auf dem Bildschirm zu schattieren, indem ermittelt wird, welche Lichter sie beeinflussen, und es beinhaltet tatsächlich überhaupt nicht das Konzept des Raytracings und hat mehrere Einschränkungen aufgrund seiner Bildschirmraum-Natur.
Glücklicherweise könnte Raytracing mit der Demokratisierung der hardwarebeschleunigten Raytracing-Technologie, die in den neuesten Mainstream-GPUs zu finden ist, bald zur neuen Norm werden, um Beleuchtung zu erzeugen, insbesondere auf leistungsstärkeren Plattformen. Die High Definition Render Pipeline (HDRP) bietet eine hybride Raytracing-Pipeline, indem traditionelle rasterisierte und Raytracing-Techniken kombiniert werden. Es bietet Raytracing-Versionen gängiger Beleuchtungseffekte wie Umgebungsokklusion (AO), Reflexionen, globale Beleuchtung (GI), Subsurface Scattering und Schatten.
Sehen Sie sich beispielsweise diese beeindruckende Präsentation des BMW 8er Coupé von 2019 an, ein Ergebnis der Zusammenarbeit zwischen Unity, NVIDIA und BMW. Es zeigt, wie Echtzeit-Raytracing fotorealistische Ergebnisse liefern kann, und das in einem Bruchteil der Zeit und Kosten von Offline-Rendering-Lösungen.
Raytracing im HDRP befindet sich derzeit in der Vorschau, was bedeutet, dass es nicht unbedingt bereit für die Produktion ist. Sie sind jedoch herzlich eingeladen, damit zu experimentieren und uns Feedback im Forum zu geben.
Das Webinar wird die brandneue HDRP-Vorlage nutzen, die in Unity 2020.2 verfügbar ist.
Daher werden Sie in der Lage sein, den Anweisungen im Webinar zu folgen, nachdem Sie Unity 2020.2 heruntergeladen haben. Um Ihr Projekt zu starten, ist es sehr einfach: Erstellen Sie ein neues Projekt im Unity Hub, wählen Sie die High Definition Render Pipeline-Vorlage aus und klicken Sie auf die Schaltfläche Erstellen.

In seiner aktuellen Version verwendet die HDRP-Vorlage nur rasterisierte Techniken, um das Licht über gebackene Lichtkarten, Lichtproben-Gruppen, Reflexionsproben, Schattenkarten usw. zu rendern. Der erste Schritt des Webinars wird darin bestehen, die Vorlage schnell zu konvertieren, um die Ray Tracing-Technologie zu nutzen.
Später werde ich dann 4 der Haupt-Ray Tracing-Effekte, die in HDRP verfügbar sind, detaillierter vorstellen, nämlich Ray Traced Ambient Occlusion, Reflexionen, Globale Beleuchtung und Schatten. Schließlich werde ich die Sitzung mit HDRP’s Path Tracing beenden, einem bruteforce Ansatz für Ray Tracing, der noch mehr visuelle Treue auf Kosten einer erheblich erhöhten Renderzeit bietet.
Die Bildschirmraum-Ambient Occlusion (SSAO) ist seit mehr als einem Jahrzehnt ein fester Bestandteil des Echtzeit-Renderings für Spiele. Sie wird verwendet, um die diffuse Occlusion der Umgebung zu simulieren, um den visuellen Kontakt zwischen Objekten in der Welt zu verbessern und das Licht in konkaven Bereichen zu verdunkeln. Wenn dieser Effekt jedoch zu stark ausgeprägt ist, kann er Halos um Geometrien erzeugen und sogar einen cartoonhaften Look verleihen. Ein weiterer Nachteil dieser Bildschirmraumtechnik ist ihre Unfähigkeit, Occlusion von Objekten zu erzeugen, die sich außerhalb des Rahmens befinden, da sie nur auf die im Z-Puffer verfügbaren Tiefeninformationen angewiesen ist. Auf der positiven Seite ist dieser Effekt immer noch großartig darin, Mikro-Occlusion kleiner Bereiche aus der Perspektive der Kamera zu behandeln, und das zu relativ geringen Leistungskosten.
Hoffentlich können dank Ray Tracing Strahlen auf Oberflächen außerhalb des Kamerafrustums geschossen werden, und daher können sie Objekte erreichen, die sich außerhalb des Rahmens befinden. Auf diese Weise können Sie großartige Makro-Oklusion von großen Objekten erhalten, die sich rund um die Kamera befinden. Obwohl AO technisch gesehen nur eine grobe Annäherung an die Umgebungsbeleuchtung ist, kann es andere Beleuchtungstechniken wie Lichtkarten oder Lichtproben ergänzen, deren Auflösung oder Dichte begrenzt ist und daher nicht in der Lage ist, Mikro-Oklusion zu erfassen.
Ähnlich wie bei SSAO können Bildschirmraumreflexionen (SSR) nur Objekte im Rahmen reflektieren: Wiederum können Oberflächen, die für die Kamera nicht sofort sichtbar sind, nicht reflektiert werden. Wenn Sie beispielsweise auf den Boden schauen, wird die SSR-Technik keine nützlichen Informationen liefern können. Daher ist SSR sehr approximativ, und diese Technik hat viele Kritiker, einschließlich meiner Wenigkeit, da eine gute Platzierung von statischen Reflexionsproben oft ansprechendere und weniger ablenkende Ergebnisse für die meisten statischen Szenarien liefern kann. Ein Bereich, in dem SSR buchstäblich glänzt, ist jedoch der Umgang mit planaren Reflexionen für Oberflächen, die parallel zur Blickrichtung sind, wie Böden, Wände und Decken. Ein optimaler Anwendungsfall für SSR wäre eine Kamera, deren Neigung fixiert ist, wie in einem Rennspiel.
Mit Ray Tracing können wir jedoch auf Informationen zugreifen, die sich außerhalb des Bildschirms befinden, und als Folge können wir eine genauere Reflexion der Welt bieten, zumindest innerhalb eines bestimmten Radius um die Kamera, definiert durch den Light Cluster und die Länge der Strahlen.
Eine der beeindruckendsten Funktionen von Ray Tracing ist die Fähigkeit, Echtzeit-Globalbeleuchtung zu erzeugen, das heißt die Simulation von indirekter Beleuchtung, oder einfach gesagt, das Licht, das in der Umgebung reflektiert wird.
Typischerweise wird in Spiel-Engines die indirekte Beleuchtung mit vorab berechneten oder Backtechniken behandelt, wie Lichtproben oder Lichtkarten, und sie können die Iterationszeit von Künstlern und Designern, die mit der Beleuchtung arbeiten, erheblich verlangsamen.
Glücklicherweise bietet HDRP 2 Techniken für RTGI: eine Performance- und eine Qualitätsvariante. Die erste ist auf Szenarien mit hoher Bildrate bei direktem Licht ausgerichtet, während die zweite sehr genaue Ergebnisse in komplexeren Innenräumen dank mehrerer Reflexionen und Proben liefern kann, jedoch zu einem sehr hohen Rechenaufwand.
Out of the box, wenn die High Schattenfilterqualität (PCSS) verwendet wird, bietet HDRP großartig aussehende Schattenkarten, die die natürliche Glätte von Schatten simulieren, während sie sicherstellen, dass sie in der Nähe der Schattenwerfer scharf bleiben, wie im echten Leben. Wenn jedoch die günstigere Medium Filterqualität verwendet wird, können die Ergebnisse enttäuschend sein, da die gesamte Schattenkarte gleichmäßig gefiltert wird, unabhängig von den Abständen zwischen Werfern und Empfängern.
Die Ergebnisse können mit Ray Traced Shadows dramatisch verbessert werden, indem Strahlen von Oberflächen zu den Lichtern geschossen werden, um die Menge der Oklusion zwischen ihnen zu bestimmen. Dies kann daher eine extrem realistische Annäherung an die Schattierung bieten, bei moderatem Leistungsaufwand. Darüber hinaus unterstützt HDRP transparente Schatten!
Schließlich ermöglicht die Pfadverfolgung Künstlern, eine großartige Bildqualität erheblich schneller zu erzeugen als traditionelle Offline-Renderer. Strahlen werden von der Kamera ausgesendet und immer wenn sie eine Oberfläche treffen, schießen wir weitere Strahlen zu anderen Oberflächen und Lichtern (d.h. der Light Cluster Struktur). Die Reise der Strahlen zwischen der Kamera und den Lichtern wird als Pfad bezeichnet, daher der Name Pfadverfolgung.
Der Vorteil der Pfadverfolgung gegenüber den oben genannten Raytracing-Methoden besteht darin, dass sie einen einheitlichen Prozess zur Erzeugung aller Beleuchtung bietet, wie Schatten, Reflexionen, Brechung und globale Beleuchtung. Die Hauptnachteile dieser Technik sind Renderzeit und Rauschen. Für letzteres können wir jedoch Proben über mehrere Sekunden ansammeln, um weniger rauschende Ergebnisse zu erzielen.
Hoffentlich werden Sie nach dem Anschauen dieses bevorstehenden Webinars ein viel besseres Verständnis der wichtigsten Raytracing-Funktionen in Unity haben und in der Lage sein, die visuelle Qualität Ihrer Visualisierungen und sogar von Echtzeitspielen erheblich zu steigern.
Wir freuen uns auf Ihre Teilnahme am Webinar und darauf, Ihre Fragen live zu beantworten! Und vergessen Sie nicht, dass Sie auch Fragen stellen und uns Feedback im Unity Raytracing Forum hinterlassen können.

Pierre Yves Donzallaz (Technischer Kunstmanager, F&E, Grafik) ist ein erfahrener Lichtkünstler mit über einem Jahrzehnt AAA-Erfahrung im Bereich des Echtzeit-Renderings. Er hat einen starken technischen und künstlerischen Hintergrund und spezialisiert sich auf Beleuchtung, Levelverschönerung, UX, Tool-Design und Workflow-Verbesserungen.
Er hat an preisgekrönten Spielen und großen AAA-Produktionen gearbeitet, darunter die Crysis Serie, Ryse: Sohn von Rom, Grand Theft Auto V und Red Dead Redemption 2.
Derzeit ist er Mitglied des Grafik-Teams von Unitys F&E, wo er andere technische Künstler leitet, deren Mission es ist, die Effizienz der Künstler zu verbessern, Benutzer weltweit zu schulen und neue Tools, Workflows und grafische Funktionen zusammen mit Ingenieuren und Designern zu entwickeln.

Anis Benyoub (Senior Graphics Programmer, R&D, Graphics) arbeitet derzeit daran, Rendering-Pipelines für Spiele und Echtzeitanwendungen zu erweitern, um Echtzeit-Raytracing zu unterstützen. Anis ist leidenschaftlich an Monte-Carlo-Integration, physikalisch basierendem Rendering und Echtzeitleistung interessiert (und liebt es, sein Wissen mit der Community zu teilen).
Vor Unity arbeitete er bei Pretty Simple Games als Grafikingenieur, bei Autodesk als 3D-F&E-Ingenieur an 3DS Max und dann als Softwareingenieur im Kernteam der Stingray-Spiel-Engine. Er hat einen M. Sc. in Informatik von Ecole Polytechnique de Montréal mit Schwerpunkt Computer Graphics und einen M.Eng-Abschluss in Informatik von INSA Lyon.
