4.8 - PBR WORKFLOW
Physically Based Rendering (PBR) beschreibt einen Ansatz, Materialien und Oberflächen so darzustellen, dass sie sich unter verschiedenen Lichtbedingungen physikalisch korrekt verhalten. Das Ziel besteht darin, ein konsistentes und realitätsnahes Erscheinungsbild zu erzeugen – unabhängig davon, ob die Szene unter Studiobedingungen, im Sonnenlicht oder in einer künstlich beleuchteten Umgebung betrachtet wird.
Dabei ist wichtig zu verstehen, dass PBR kein starrer Standard ist, sondern vielmehr ein Workflow, also eine Methode zur Annäherung an physikalische Materialeigenschaften. Unterschiedliche Programme setzen dieses Prinzip leicht unterschiedlich um, sodass es in der praktischen Anwendung – etwa beim Import von Texturen oder der Verwendung bestimmter Materialparameter – zu Abweichungen kommen kann.
Innerhalb des PBR-Konzepts haben sich zwei grundlegende Workflows etabliert. Der heute am weitesten verbreitete ist der Metalness/Roughness-Workflow, der auch in Blender zum Einsatz kommt. Sein Vorteil liegt in der klaren Unterscheidung zwischen Metallen und Nichtmetallen (Dielektrika), was eine praxisnahe und eindeutige Umsetzung erlaubt. Daneben existiert der Specular/Glossiness-Workflow, der in einigen anderen Programmen und älteren Renderpipelines gebräuchlich ist, beispielsweise in klassischen Game Engines. Da Blender vollständig auf dem Metalness/Roughness-Workflow aufbaut, konzentrieren wir uns hier auf dieses Modell.
Der BSDF-Shader als Grundlage
Im Zentrum des PBR-Workflows in Blender steht der Principled BSDF-Shader. Er stellt sämtliche wesentlichen Materialeigenschaften in Form einzelner Regler zur Verfügung – darunter Metallizität (Metalness), Rauigkeit (Roughness), Transmission, Subsurface Scattering und viele weitere Parameter. Jeder dieser Kanäle beeinflusst auf seine Weise das Erscheinungsbild einer Oberfläche und trägt somit zum physikalisch korrekten Verhalten bei.
Ein zentraler Punkt ist dabei: Alle Parameter gelten zunächst global für die gesamte Oberfläche, auf die das Material angewendet wird. Ohne weitere Steuerung würde man also sehr gleichförmige Materialien erhalten, die keine Varianz zwischen einzelnen Bereichen aufweisen. Eine Metallfläche etwa wäre gleichmäßig glänzend oder rau, ohne Kratzer, Abnutzung oder andere lokale Unterschiede.
Genau hier kommen Maps ins Spiel. Sie erweitern den Shader um lokale Informationen und machen es möglich, Materialeigenschaften punktgenau zu steuern. Jede Map ist eine Textur, die an einen bestimmten Shader-Kanal angeschlossen wird und an jeder Stelle der Oberfläche unterschiedliche Werte vorgibt. Dadurch entsteht eine enorme Detailtiefe: das Material reagiert nicht nur physikalisch korrekt auf Licht, sondern wirkt auch lebendig, da es kleinste Unregelmäßigkeiten, Kratzer, Flecken oder Strukturen aufweist. Erst durch dieses Zusammenspiel von Shader und Maps entfaltet der PBR-Workflow sein volles Potenzial.
Die wichtigsten Maps im Detail
Hier ein Überblick über die gängigsten Maps im PBR-Workflow:
- Base Color / Albedo
Die Albedo-Map definiert die reine Grundfarbe des Materials – ohne Schattierungen, Reflexionen oder Lichteffekte. Sie gibt also das „tatsächliche“ Farbbild der Oberfläche wieder. In Blender wird sie mit dem Color-Space sRGB verwendet, damit die Farbinformationen korrekt interpretiert werden.
2. Metalness-Map
Sie steuert, welche Bereiche einer Oberfläche metallisch sind und welche nicht. Weiß bedeutet „Metall“, Schwarz steht für „Nichtmetall“ (Dielektrikum). Zwischenwerte spielen hier keine Rolle, da eine Oberfläche in der Physik nur das eine oder das andere sein kann. Der Color-Space ist Non-Color, da es sich nicht um Farbwerte, sondern um reine Datenwerte handelt.
3. Roughness-Map
Diese Map bestimmt die Rauigkeit der Oberfläche und beeinflusst damit direkt die Art der Spiegelungen. Schwarze Bereiche erscheinen glatt und glänzend, weiße Bereiche rau und diffus. Zwischenwerte sind möglich und sehr nützlich, da sie abgestufte Glanzunterschiede ermöglichen. Auch hier ist der Color-Space Non-Color.
4. Normal Map
Normal Maps simulieren feine Strukturen und Erhebungen, ohne die Geometrie tatsächlich zu verändern. Dazu werden die RGB-Kanäle der Map genutzt, um die Ausrichtung der Oberflächennormalen in x-, y- und z-Richtung zu definieren. Das Ergebnis: eine plastisch wirkende Oberfläche mit deutlichem Relief.
Allerdings bleibt die Geometrie unverändert – bei flachen Betrachtungswinkeln fällt auf, dass nur das Shading beeinflusst wird. Für echte Geometrieveränderungen werden Displacement Maps benötigt.
Wichtig: Normal Maps erfordern in Blender ein Normal Map-Node zwischen Textur und Shader. Dort kann die Intensität des Effekts über den Strength-Regler angepasst werden. Der Color-Space muss zwingend Non-Color sein, da die Werte der einzelnen Farbkanäle ohne die Interpretation eines Farbprofils an den Shader übergeben werden müssen.
5. Bump Map
Bump Maps sind eine einfachere, grauwertbasierte Variante der Normal Maps. Sie erzeugen Reliefwirkungen allein durch Schattierungen, berechnen aber keine veränderten Normalen. Dadurch sind sie weniger präzise und für Reflexionen ungeeignet, aber sehr praktisch für feine Strukturen wie Kratzer oder Poren.
In Blender wird ein Bump-Node benötigt. Wenn Normal- und Bump Map kombiniert werden, wird das Bump-Node zwischen Normal Map-Node und Shader geschaltet. Der Color-Space ist Non-Color.
6. Height / Displacement Map
Diese Map verändert die Geometrie tatsächlich und hebt oder senkt Flächen basierend auf Grauwerten. Damit lassen sich realistische Strukturen wie Fugen oder tiefe Risse erzeugen.
Streng genommen gehört Displacement nicht mehr zum Shading, da es zusätzliche Geometrie erzeugt. Deshalb werden Displacement Maps nicht direkt am Shader, sondern im Material-Output eingebunden. Der Color-Space ist Non-Color.
Einen ausführlichen Workflow zur Verwendung und Einbindung von Displacement Maps findest Du im anschließenden Kapitel.
7. Ambient Occlusion (AO)
AO-Maps verstärken Verschattungen in Fugen, Kanten und Vertiefungen. In Blender mit Cycles sind sie kaum nötig, da Cycles Licht und Schatten physikalisch korrekt berechnet. In Kombination mit „biased“ Renderern oder Game Engines können AO-Maps jedoch sinnvoll sein, da sie bereits vorgebackene Schatteninformationen enthalten.
8. Specular Map
Sie spielt im Specular/Glossiness-Workflow eine zentrale Rolle, ist im Metalness/Roughness-Modell aber weniger relevant. Blender erlaubt dennoch ihre Verwendung: Sie kann den Reflexionsanteil über den IOR-Wert im Specular-Kanal beeinflussen. Der Color-Space ist Non-Color.
9. Emission Map
Emission Maps definieren Bereiche, die selbst Licht abstrahlen – etwa LEDs, Displays oder glühende Materialien. Sie werden im BSDF-Shader an den Emission-Kanal angeschlossen. Da es sich um Farbinformationen handelt, ist der Color-Space sRGB.
Ein Wort zum Color-Space
Ein häufiger Fehler ist die falsche Einstellung des Color-Spaces. Maps, die als Datenwerte interpretiert werden müssen (z. B. Roughness, Normal oder Metalness), müssen zwingend auf Non-Color stehen. Andernfalls würden sie durch ein Farbprofil verfälscht und liefern fehlerhafte Ergebnisse. Besonders kritisch ist dies bei Normal Maps: Schon eine falsche Interpretation führt zu unphysikalischen Reflexionen.
Normal Maps – OpenGL vs. DirectX (DX / DivX)
Normal Maps sind eines der zentralen Werkzeuge im PBR-Workflow, um Oberflächen plastisch wirken zu lassen. Dabei ist es wichtig zu wissen, dass nicht alle Normal Maps gleich interpretiert werden – unterschiedliche Render-Engines oder Programme nutzen leicht unterschiedliche Standards. Die zwei gängigsten Systeme sind OpenGL und DirectX (DX), manchmal auch als „DivX-Standard“ bezeichnet.
Der entscheidende Unterschied liegt im Grünkanal der Normal Map.
- OpenGL: Der Grünkanal zeigt die Y-Komponente der Normalen unverändert.
- DirectX / DivX: Der Grünkanal ist invertiert. Werte, die bei OpenGL nach oben zeigen, zeigen bei DX nach unten – und umgekehrt.
Konsequenzen für das Shading
Wird eine DirectX-Normal Map fälschlicherweise in Blender (das OpenGL nutzt) geladen, erscheint das Relief verkehrt herum: Erhebungen wirken wie Vertiefungen und Reflexionen werden falsch berechnet. Besonders bei glänzenden oder metallischen Materialien fällt dieser Fehler sofort auf.
Korrektur der Normal Map in Blender
Es gibt zwei Möglichkeiten, eine Normal Map für Blender anzupassen:
- In einem Bildbearbeitungsprogramm
-
- Öffnen der Map, Invertieren des Grünkanals, speichern – fertig.
2. Direkt in Blender (ohne externe Programme)
-
- Normal Map in ein Separate RGB Node einspeisen.
- Den Grünkanal invertieren, z. B. über einen Invert Node oder durch mathematische Operationen im Node-System.
- Die drei Kanäle über ein Combine RGB Node wieder zusammenführen.
- Anschließend an den Normal Map Node anschließen.
Durch diese Anpassung verhält sich das Material wie vorgesehen, und das Relief wird korrekt berechnet.
Praktischer Tipp
Wenn du Texturen aus Online-Bibliotheken oder externen Quellen verwendest, solltest du immer prüfen, welches Normal Map-Format geliefert wird. In den meisten Fällen wird diese Information in den Begleitdaten der Textur angegeben.
Ein kurzer Test im Viewport – eine einfache Fläche mit Normal Map und Lichtquelle – zeigt sofort, ob Erhebungen und Vertiefungen korrekt wirken.
Zeit sparen mit Node Wrangler
Der Aufbau eines vollständigen Shaders mit allen benötigten Maps und den dazugehörigen Nodes kann schnell unübersichtlich und vor allem zeitraubend werden. Besonders wenn mehrere Maps miteinander kombiniert werden sollen, steigt die Fehleranfälligkeit – etwa durch falsche Verknüpfungen oder vergessene Color-Space-Einstellungen.
Ein äußerst hilfreiches Werkzeug in Blender ist hier das Add-on Node Wrangler. Dieses Add-on ist bereits standardmäßig in der Blender-Installation enthalten und muss lediglich im Preferences-Menü aktiviert werden.
Node Wrangler bietet eine Vielzahl an Funktionen, die den Shader-Aufbau erheblich beschleunigen. Eine der praktischsten ist der Befehl „Add Principled Setup“:
- Wenn eine Textur (z. B. eine Base Color Map) ausgewählt ist und dieser Befehl aufgerufen wird, erkennt Node Wrangler die vorhandenen Maps im Ordner automatisch.
- Anschließend werden die Texturen direkt mit den passenden Kanälen des Principled BSDF-Shaders verbunden – inklusive korrekter Einstellung des Color Spaces für jede Map.
Damit spart man nicht nur Zeit, sondern reduziert auch die Gefahr von Fehlern im Workflow erheblich.
Eine ausführliche Beschreibung, wie das Add-on aktiviert und im Detail verwendet wird, findet sich im hinteren Teil dieses Buches im Kapitel Add-ons.