In diesem Beitrag werden wir uns mit der Erstellung einer Szene befassen, die mit der High Definition Rendering Pipeline von Unity, auch bekannt als HDRP, gerendert werden soll. Wir gehen durch den Start eines neuen HDRP-Projekts, aktualisieren die Materialien aller importierten Assets und lernen, wie man die neuen Parameter im Material Inspector verwendet, um ein realistisches Glasmaterial zu erstellen. Wir werden auch die Unterschiede zwischen der Built-In Pipeline und HDRP hervorheben.

Wenn Sie der englischen Sprache mächtig sind und Videos bevorzugen, empfehlen wir Ihnen das folgende Video:

For privacy reasons YouTube needs your permission to be loaded. For more details, please see our Datenschutzerklärung.

HDRP einrichten.

Wenn Sie es noch nicht getan haben, empfehlen wir Ihnen, Unity Hub zu installieren. Es hilft Ihnen, den Überblick über Ihre Projekte und die installierten Versionen von Unity zu behalten. Wenn Sie ein neues Projekt in Unity Hub unter Templates erstellen, sehen Sie eine Option zur Auswahl von High Definition RP (Preview).

Da sich HDRP noch in der Preview befindet, ist es keine gute Idee, mitten in der Produktion auf HDRP umzusteigen. Sie können jedoch versuchen, Ihr Projekt auf HDRP zu aktualisieren, indem Sie in den neuen Package Manager gehen und es installieren. Beachten Sie, dass Sie nach dem Upgrade Ihres Projekts auf HDRP nicht mehr zurückkehren können. Stellen Sie sicher, dass Sie vor dem Upgrade ein Backup des Projekts erstellen.

Wie bereits erwähnt, ist HDRP noch in der Preview, so dass es in Zukunft Änderungen unterliegen kann. Um ein Projekt von der integrierten Renderpipeline auf HDRP zu aktualisieren, navigieren Sie zu Window > Package Manager. Im Package Manager sehen Sie alle aktuellen Pakete, die in Ihrem Unity-Projekt installiert sind. Unter „alle“ finden Sie „HD Render Pipeline“ (Render-pipelines.high) und installieren die neueste Version. Bei der Installation der Pipeline werden auch der Render-Pipeline-Core, Shader Graph und die Post-Processing-Pakete integriert.

Nach der Installation des HDRP-Pakets müssen Sie zu Bearbeiten > Projekteinstellungen > Grafiken navigieren, um die Asset Scriptable Render Pipeline für HDRP zuzuweisen.

Der Inspektor zeigt das installierte Render Pipeline Asset unter dem Feld „Scriptable Render Pipeline Settings“ an. Das HDRP Render Pipeline Asset wird zugewiesen, wenn Sie die Pipeline vom Unity Hub aus installieren. Wenn Sie Ihr Projekt von der Built-In-Pipeline aktualisieren, wird dieses Feld auf „None“ gesetzt. Wir können ein Pipeline-Asset zuweisen, indem wir auf den Button neben dem Feld „Asset Selection“ klicken oder das Asset aus dem Ordner Settings ziehen.

HDRP verwendet die C# Scriptable Render Pipeline API. Damit kommt eine ganze Reihe von verschiedenen Einstellungen, die Sie einstellen können, um die Darstellung Ihres Projekts anzupassen. Da Ihre Rendering-Einstellungen in einem Render Pipeline Asset gespeichert sind, können Sie Ihre Render-Einstellungen ändern, indem Sie diesem Feld ein neues Render Pipeline Asset zuweisen.

Um ein neues Render Pipeline Asset zu erstellen, klicken Sie mit der rechten Maustaste in Ihren Einstellungsordner und wählen Sie Create > Rendering > High Definition Render Pipeline Asset.

Upgrade der Materialien.

Bei der Verwendung eines HDRP Projekts wird kein eingebautes, standardmäßiges oder unbeleuchtetes Material von Unity gerendert und erscheint daher mit dem standardmäßigen rosa unbeleuchteten Shader, den Unity anzeigt, wenn ein Shader beschädigt ist. Dies kann bei dem Versuch, ein bestehendes Projekt zu aktualisieren, oder bei der Integration von Legacy-Inhalten wie Assets aus einem Store auftreten, die keine HDRP-kompatiblen Shader verwenden. Um mit HDRP gerendert zu werden, muss das Material upgegradet werden.

Unity 2018.1 ist mit einem eingebauten Material Conversion Tool ausgestattet. Es übernimmt die Materialeigenschaften aus dem Standard-Shader von Unity und wandelt sie in neue HDRP-Materialien um. Es ist erwähnenswert, dass dies bei benutzerdefinierten Shadern, die für HDRP neu geschrieben werden müssen, nicht funktioniert.

Um auf das Material Conversion Tool zuzugreifen, navigieren Sie zu Bearbeiten > Renderpipeline.

Unity bietet in diesem Menü mehrere Upgrade-Optionen an. Wir konzentrieren uns auf die ersten beiden hier. „Upgrade Projects Materials to High Definition Materials“, wird alle aktualisierbaren Materialien im Projekt aktualisieren. „Upgrade Selected Materials to High Definition Materials“, können Sie im Projektfenster auswählen, welche Materialien Sie aktualisieren möchten.

An dieser Stelle empfehlen wir Ihnen, ein separates Backup Ihres Projekts zu erstellen.

Nach der Umwandlung der Materialien wird der Shader des Materials nun „HDRenderPipeline/Lit“ genannt. Jetzt haben Sie vollen Zugriff auf die brandneuen Funktionen des HDRP-Shaders im Material Inspector.

Darüber hinaus können Sie innerhalb der Materials Shader Optionen unter „HDRenderPipeline“ eine Vielzahl von Shadertypen wie LitTesseleation oder Unit auswählen und anwenden, um nur einige zu nennen.

Die folgenden Abschnitte enthalten eine Einführung in einige der neuen Funktionen, die im Rahmen von HDRP hinzugefügt wurden. Wir haben einige dieser neuen Funktionen genutzt, um das Aussehen unserer Küchenszene zu verbessern.

HDRP Lighting.

Die Beleuchtung in HDRP verwendet ein System mit der Bezeichnung Physical Light Units (PLU). PLU bedeutet, dass diese Einheiten auf realen messbaren Werten basieren, wie z.B. beim Durchsuchen von Glühbirnen im Geschäft oder beim Messen von Licht mit einem fotografischen Lichtmesser.

Wir verwenden LUX für Lichtstrahler, da dies in der realen Welt die Werte sind, mit denen die Intensität des Sonnenlichts gemessen wird, was mit einem LUX-Meter problemlos möglich ist. Andere reale Lichtquellen verwenden Lumen zur Intensitätsmessung, die als Referenz für die kleineren Lichtemitter in unserer Szene dienen können.

Line Lights in Echtzeit.

Line Lights in Echtzeit sorgen für eine nahtlose, konstante Lichtleistung, die von einer Linie mit einer frei definierbaren Länge ausgeht. Diese Lichtarten werden häufig in Animationsfilmen verwendet, um eine realistische Beleuchtung zu erreichen. Sie verleihen der Beleuchtung Ihrer Szenen eine filmische Qualität. Line Lights können durch Auswahl des Formtyps im Inspektor erstellt werden, nachdem ein Licht in einer Szene platziert wurde.

Viele moderne Küchen verwenden einen Stil von Line Lights, um den Küchenarbeitsplatz zu beleuchten, so dass die Line Lights hier nicht nur eine realistische Beleuchtung erzeugt, sondern auch genau das trifft, was in einer echten Küche zu finden wäre.

Darüber hinaus kann der Light Inspector die Farbe eines durch die Temperatur emittierten Lichts bestimmen. Auf einer Skala von 1000 bis 20.000 Kelvin, je niedriger der Wert, desto weniger Wärme wird abgegeben, das Licht erscheint rot. Wenn Sie dagegen den Temperaturwert erhöhen, erscheint dieser blauer.

Ebenso emittiert der Rechteck-Formtyp eine Lichtleistung, die auf benutzerdefinierten X- und Y-Achsenwerten basiert.

Hinweis: Schatten werden derzeit für die Line oder Rectangle Light Shape Typen nicht unterstützt.

Light Explorer.

Als zusätzlichen Typ können Sie mit dem Light Explorer jede Art von Licht innerhalb Ihres Projekts einfach verwalten. Sie können Werte oder den Typ der Lichter ändern und sogar Schattentypen manipulieren, ohne sie in der Szene finden zu müssen. Reflection Probes, Light Probes und Static Emissives können zusätzlich über dieses Fenster verwaltet werden.

Um auf den Light Explorer zuzugreifen, navigieren Sie zu Fenster > Allgemein > Light Explorer.

Lautstärke-Einstellungen.

Mit den Lautstärkeeinstellungen können Sie Ihre Umgebungseinstellungen visuell ändern und Elemente wie Visual Environment, Procedural Sky und die HD Shadow Settings anpassen. Auf diese Weise können Sie auch benutzerdefinierte Volumen Profiles erstellen und zwischen diesen wechseln.

Die Volume Settings werden verwaltet, indem ein Spielobjekt erstellt und die Volume Komponente hinzugefügt wird. Dieser Workflow ähnelt demjenigen zum Anlegen eines Volumens für den Post-Processing-Stack v2, der in HDRP standardmäßig innerhalb der Hierarchie vorhanden ist.

HD Shadow Settings.

Mit den HD Shadow Settings können Sie die Gesamtqualität der Schatten in einem Volume bestimmen. Das Feld „Max Distance“ berechnet die Qualität der Schatten basierend auf der Entfernung der Kamera vom Schatten.

Visuelle Umgebung.

Sie haben zwei Dropdown-Menüs innerhalb der visuellen Umgebung.

Der Sky-Typ bietet drei Optionen: Procedural Sky, Gradient Sky und HDRI Sky.

Procedural Sky erzeugt eine Umgebung, die auf den Werten basiert, die Sie innerhalb der prozeduralen Himmelskomponente wählen.

HDRI Sky erstellt eine Environment Map basierend auf einem Bildsatz innerhalb der Komponente. Standardmäßig ist die HDRISky-Komponente nicht den Lautstärkeeinstellungen zugeordnet, indem Sie unten auf der Registerkarte Inspector auf „Add component overrides…“ klicken und „HDRI Sky“ auswählen, wird die Komponente verfügbar.

Jetzt können Sie eine HDRI Sky Cubemap zuweisen und die Werte ändern, um eine präzise, realistische Beleuchtung zu erreichen.

Unity HDRI Pack ist kostenlos im Asset Store von Unity Technologies erhältlich und bietet 7 vorkonvertierte (Auflösung 1024×2014) HDR Cubemaps, die Sie in Ihrem Projekt verwenden können.

Für diese Szene funktionierte „TreasureIslandWhiteBalanceNoSun“ aus dem Unity HDRI Pack am besten, da es genügend Licht lieferte, um die Küche aufzuhellen, aber nicht auszuwaschen. Mit den in der Komponente mitgelieferten Modifikatoren wie Belichtung und Multiplikator kann die Helligkeit natürlich verändert und angepasst werden. Es ist wichtig, eine HDRI-Map auszuwählen, die Ihre Szene ergänzt.

Schließlich gibt Ihnen Fog Type 3 Optionen:

  • Linear
  • Exponentiell
  • und Volumetrisch.

Um die Werte zu ermitteln, wiederholen Sie den vorherigen Komponentenschritt („Add Component Override“, wenden Sie die entsprechende Komponente auf den Inspector an).

Material Inspector.

Vor der Einführung der HDRP war die Erstellung eines Glasmaterials kein einfaches Unterfangen. Es gab keine einfache Möglichkeit, ein realistisches Glasmaterial ohne umfangreiche Forschung und Shader-Programmierung zu konstruieren oder auf den Asset Store zuzugreifen, um einen individuellen Shader zu verwenden.

Mit den neuen Funktionen des HDRP Lit Shaders im Material Inspector können Sie nun Glas erzeugen, das nicht nur gut aussieht, sondern auch das Licht anhand definierbarer Einstellungen bricht.

Zunächst möchten wir ein neues HDRenderPipeline/Lit Material anlegen. Dies ist der Standard-Material-Shader, der auf jedes neue Material angewendet wird, das in HDRP erstellt wurde.

Um ein neues Material anzulegen, klicken Sie mit der rechten Maustaste in den gewünschten Ordner und wählen Sie Create > Material. Der Material Inspector zeigt nun den brandneuen HDRP Material Inspector. Darin gibt es einige auffällige Änderungen. Lasst Sie uns überprüfen.

Optionen bezüglich der Oberfläche.

Hier können Sie mit der Bestimmung der Oberfläche des Materials beginnen.

Typ der Oberfläche.

Es gibt zwei Möglichkeiten für den Oberflächentyp: opak oder transparent. Opak simuliert ein völlig solides Material ohne Lichteinfall.

Im Gegensatz dazu ist Transparent ein Alpha-Blend und simuliert eine transluzente Oberfläche, obwohl diese Art von Oberfläche nützlich ist, ist sie teurer zu rendern.

Ein wichtiges Merkmal von HDRP ist die einheitliche Beleuchtung von transparenten und opaken Objekten.

Wählen Sie für dieses Beispiel transparent. Dies ermöglicht den Zugriff auf die im Folgenden beschriebenen Parameter.

Beidseitig.

Diese Einstellung ermöglicht es, das Material auf beiden Seiten darzustellen. Standardmäßig ist der Normalmodus auf Mirror eingestellt, aber in der Dropdown-Liste können wir Flip oder None wählen.

Wenn beidseitig bzw. „double-sided“ nicht aktiv ist, rendert Unity nur die Seiten des Materials, die der Kamerarichtung zugewandt sind.

Material-Typ.

Die Optionen für den Materialtyp schaffen neue Verhaltensweisen, die noch realistischere Materialien ermöglichen. Jede dieser Optionen bietet zusätzliche Parameter innerhalb des Inspektors, sobald sie aktiviert sind.

Standard.

Verwendet die Basisparameter und ist der Standard-Material-Typ.

Subsurface Scattering (SSS).

Subsurface Scattering funktioniert, indem sie simuliert, wie Licht interagiert und durch transzulente Objekte wie Pflanzen dringt. Es wird auch bei der Darstellung der Haut verwendet. Wenn Sie jemals ein Licht durch die Spitze Ihres Fingers gestahlt haben, werden Sie gesehen haben, dass das Licht seine Farbe ändert, wenn es unter der Oberfläche gestreut wird. Dies kann mit diesem Oberflächentyp repliziert werden.

Nach der Aktivierung erscheint ein Übertragungsparameter. Damit können Sie die Transzulenz eines Objekts anhand der Thickness Map bestimmen.

Beide Merkmale können mit Hilfe von Diffusion Profiles manipuliert werden. Es werden zwei Standardprofile mit den Bezeichnungen Skin und Foliage bereitgestellt, die als Grundlage für diese Art von SSS-Materialien verwendet werden können. Weitere 13 Profile können mit den unten aufgeführten Profileinstellungen angepasst werden.

Anisotropie.

Die Anisotropie simuliert ein Oberflächenmaterial, das je nach Ausrichtung seine Eigenschaften ändert, z.B. das Aussehen von gebürstetem Aluminium. Anstatt eine metallische Oberfläche mit sauberen Reflexionen zu erzeugen, können Sie sowohl mit einer Tangenten- als auch einer Anistotropie-Map die Intensität der Reflexionen sowie die Ausrichtung ändern.

Iridescence.

Stellt die Parameter zur Verfügung, um einen irisierenden Effekt auf der Oberfläche des Materials zu erzeugen, ähnlich wie bei einem Ölunfall Licht entsteht. Der Output wird durch eine Iridescence-Map und eine Iridescence-Layer-Thickness-Map bestimmt.

Specular Color.

Specular Color wird verwendet, um die Farbe und Stärke von Spiegelreflexen im Material zu steuern. Dies ermöglicht es, eine Spiegelreflexion mit einer anderen Farbe als der diffusen Reflexion zu haben.

Transparenz.

Die transzulente Option kann sehr effektiv bei der Simulation von Lichtinteraktionen für die Vegetation sein. Dieser Materialtyp verwendet Profile, ähnlich wie SSS, außer in diesem Fall wird die Thickness Map verwendet, um zu bestimmen, wie Licht übertragen wird.

Decals aktivieren.

Dieser nützliche Parameter ermöglicht es dem Material, auf ein Decal-Material zu reagieren, was für beide Arbeitsabläufe funktioniert, entweder über den Decal-Projektor oder als Objekt-Komponente.

Inputs.

Grundfarbe und Opazität.

An dieser Stelle wird das Glasmaterial noch undurchsichtig erscheinen, da Sie den Wert der Opazität innerhalb der Inputs ändern müssen, damit Licht eindringen kann.

Öffnen Sie dazu das Farbmusterfenster neben „Grundfarbe und Opazität“.

Rote, grüne und blaue Kanäle werden als Grundfarbe verwendet und ein Alphakanal bestimmt die Opazität. Die Opazität des aktuellen Materials wird aus einem Wert von 0 bis 255 bestimmt, 255 ist vollständig undurchsichtig, 0 ist vollständig transparent. Für dieses Beispiel wollen wir die Farbe des Materials auf ein helles Grün setzen.

Wir wollen die Opazität auf 30 einstellen, da dies das Material so verändert, dass es weitgehend transparent ist.

Nachfolgend sind die von uns verwendeten Farbwerte ausgeführt:

  • R – 201
  • G – 255
  • B – 211
  • Hexadezimaler Wert – C9FFD3

Das Wichtigste, woran Sie denken sollten, ist, dass selbst wenn Sie das Alpha des Materials auf einen niedrigen Zahlenwert einstellen, aber den Oberflächentyp auf undurchsichtig halten, das Material nicht transparent ist und seine Opazität behält.

Metallic und Smoothness.

Diese Optionen können auf einem Slider mit Werten von 0 bis 1 geändert werden. Sowohl die Werte als auch die Outputs werden aus den Mask-Maps Alpha und Red Channel unten im Inspector generiert. Wenn eine Maskenzuordnung zugewiesen wird, werden die Slider anschließend verwendet, um die Werte für Minimum und Maximum neu zuzuordnen.

Normal Map.

Bei Anwendung einer Normal Map kann die Stärke beim Einstellen des Parameter-Sliders in einem Bereich von 0 bis 2 geändert werden.

Sie können Ihrem Glasmaterial zusätzliche Details und Tiefe verleihen, indem Sie ein Normal anwenden, wie z.B. Vertiefungen oder Kratzer.

Mask-Map.

Innerhalb von HDRP ist eine Mask-Map eine Kombination aus:

  • Red Channel – Metallic im Bereich von 0 bis 1
  • Green Channel – Ambient Occlusion
  • Blue Channel – Detail Map Mask
  • Alpha Channel – Smoothness

Standardmäßig verwenden in Unity importierte Texturen sRGB. Wenn Sie im Textur-Inspector die Markierung von „sRGB (Color Texture)“ aufheben, wird die Textur in ein lineares Format umgewandelt. Da die Mask-Map mit Hilfe der Mathematik einen Output erzeugt, muss diese Textur linear sein.

Coat Mask.

Die Coat Mask simuliert einen Klarlackeffekt auf dem Material und erhöht damit die Glätte. Standardmäßig ist der Wert der Coat Mask auf 0 gesetzt, aber der Slider kann den Parameter in einem Bereich von 0 bis 1 einstellen, die Clear Coat Mask kann zum Nachahmen von Materialien wie Autolack oder Kunststoff verwendet werden.

Detail Inputs.

Die Detail-Map ist eine neue Map, die in HDRP eingeführt wurde, und eine Zusammenführung von zusätzlichen Maps, die dem Material kleinste Details hinzufügen. Die Detail-Map verwendet die folgenden Kanäle:

  • Rot: Graustufen mit Overlay-Blending
  • Grün: Normal Map Y-Kanal
  • Blau: Smoothness
  • Alpha: Normal Map X-Kanal

Transparente Inputs.

Durch Ändern der Transparency Input-Eigenschaften des Shaders können Sie mit der Bestimmung des gesamten transparenten Effekts beginnen. Die Transparenz Inputs werden erst verfügbar, wenn der Oberflächentyp auf transparent gesetzt ist.

Für dieses Beispiel ermöglicht Ihnen der folgende Abschnitt, die Refraction für das Glasmaterial zu erstellen.

Refraction-Modell.

Das Refraction-Modell definiert, wie die Biegung von Licht durch das Material simuliert wird. Es gibt zwei Möglichkeiten, Ebene und Kugel.

Die Wahl des Refraction-Modells hängt von der Form und Größe des Objekts ab, auf das das Material angewendet wird.

  • Sphäre: Verwenden Sie für gefüllte Objekte ein Kugelmodell mit einer Refraction Thickness im Vergleich zur Größe des Objekts, auf dem das Material platziert ist.
  • Plane: Verwenden Sie für ein leeres Objekt einen Ebenenmodus mit einer kleinen Refraction Thickness.

Mit den Optionen Refraction Index und Refraction Thickness können Sie das Verhalten des Refraction Modells steuern.

Refraction Index.

Die Einstellung des Parameters, der auf einer Skala von 1 bis 2,5 liegt, ermöglicht eine unterschiedliche Refraction Intensity. Standardmäßig ist der Wert auf 1 gesetzt, was keine Refraction erzeugt.

Zwischen 1.1 und 1.2 kehrt die Refraction um und die Umgebung, die durch das Material gesehen wird, steht auf dem Kopf.

Da nun die Basis des Glasmaterials fertiggestellt wurde, können kundenspezifische Anpassungen hinzugefügt werden, um ein Material zusammenzustellen, das am besten für Sie und das Objekt, auf das das Material angewendet wird, funktioniert.

Schlußfolgerungen.

Wir hoffen, dass diese Übersicht Ihnen geholfen hat, besser zu verstehen, wie Sie HDRP in Ihren Projekten praktisch einsetzen können.

HDRP ist ein ständig wachsendes, aufregendes neues Tool zur Erstellung von Projekten und wir können es kaum abwarten zu sehen, was damit noch alles bewerkstelligt wird. Zögern Sie nicht und hinterlassen Sie uns unten einen Kommentar.

Vielen Dank für Ihren Besuch.