Cinema 4D Prime Material-Manager Shader Channel-Shader Ambient-Occlusion-Shader
Funktion verfügbar in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D
Ambient-Occlusion-Shader

Basis Shader

Shader-Eigenschaften

Bei allen folgenden Beispielbildern wurde der AO-Shader im Leuchten-Kanal verwendet, da seine Auswirkungen dort am besten zu erkennen sind. Für fotorealistische Ergebnisse ist dies natürlich nicht besonders geeignet.

Farbe

Verschiedene Farbverläufe

Definieren Sie hier den Farbverlauf, den AO abhängig von der Exponierung anlegt. Normalerweise ist das ein simpler Schwarz-Weiß-Verlauf, der für den Haupteinsatzzweck von AO, nämlich der Verdunklung in den entsprechenden Bereichen, maßgeschneidert ist. Es lassen sich jedoch auch beliebig anderen Farbverläufe erstellen.

Die linke Seite des Farbverlaufs entspricht dabei Bereichen, die minimal exponiert sind (z.B. Kugelunterseite), während die rechte Seite die maximal exponierten Bereichen (z.B. Kugeloberseite) färbt.

Beachten Sie dabei, dass je nach Material-Kanal (z.B. Diffusion) diese lediglich als Graustufen-Verläufe behandelt werden.

Minimum Strahlenlänge [0..+∞m]

Von links oben im Uhrzeigersinn steigende Werte für Minimum Strahlenlänge: 0m, 35m, 70m, 150m bei konstanten 150m für Maximum Strahlenlänge.

Mit Minimum Strahlenlänge definieren Sie, wie der unter Farbe eingestellte Farbverlauf zwischen exponierten und nicht exponierten Bereichen gerendert wird. Je mehr Minimum Strahlenlänge sich Maximum Strahlenlänge nähert, desto mehr drängt der Farbverlauf in Richtung der Randbereiche, die durch die maximale Strahlenlänge vorgegeben wird.

Normalerweise müssen Sie an diesem Parameter nicht viel schrauben, sondern lassen ihn auf den voreingestellten 0m stehen.

Maximum Strahlenlänge [0..+∞m]

Von links nach rechts steigende Werte für Maximum Strahlenlänge

Mit diesem Wert legen Sie fest, bis zu welcher Entfernung sich Oberflächen gegenseitig sehen. Geben Sie hier sehr kleine Werte an, sieht beispielsweise bei obigem Beispiel die Wand die Kugel nicht mehr und wird entsprechend heller gerendert. Dort, wo Geometrien aufeinandertreffen, wie an der Schnittgeraden von Wand und Boden und unter der Kugel reichen auch kleine Strahllängen noch aus, andere Oberflächen zu treffen und somit abzudunkeln.

Geben Sie hier sehr große Werte ein, wird insgesamt eine sehr viel größere Distanz angenommen, bis zu der sich Oberflächen sehen. Das ergibt weichere, homogenere Abdunkelungen, die allerdings auch größere Renderzeiten mit sich bringen (s.a. Abbildung bei Parameter Genauigkeit).

Im Allgemeinen sind eher kleinere Werte anzuraten, die einen Effekt wie in der Abbildung links oben ergeben.

Verteilung [0..100%]

Von links nach rechts 0%, 50% und 100% für Verteilung.

Bei der Berechnung von AO werden für jeden Punkt eine Anzahl Strahlen (Samples) innerhalb einer virtuellen Halbkugel in die Szene geschossen, die nachsehen ob sich innerhalb Maximum Strahlenlänge andere Geometrie befindet. Mit Verteilung regulieren Sie, inwieweit diese Samples auf der Halbkugel berücksichtigt werden. 0% berücksichtigt nur den Zenit (senkrecht darüber) der Halbkugel, während 100% die komplette Halbkugel auswertet.

Was bedeutet das in der Praxis? Stellen Sie sich Verteilung als Scheuklappe vor. Je kleiner der Wert, desto mehr geht die Scheuklappe zu und desto mehr wird der Samplingbereich auf die Senkrechte beschränkt.

In obiger Abbildung sehen Sie die Auswirkungen: links bei 0% werden nur die Bereiche senkrecht über jedem Punkt berücksichtigt, während 100% alle Samples auf der Halbkugel einbezieht und somit das realistischste Ergebnis erzielt.

Genauigkeit [0..100%]

Für die Qualität von AO sind die drei Parameter Genauigkeit, Minimum Samples und Maximum Samples zuständig. Niedrige Qualität geht mit einem körnigen Ergebnis einher. Das ist nicht unbedingt schlecht, in manchen Fällen sogar gewünscht, da dieser spezielle stochastische Stil durchaus ästhethisch wirken kann.

Wenn Sie jedoch auf homogene, fließende Übergänge Wert legen, müssen Sie eine hohe Qualität mit entsprechend hohen Renderzeiten definieren.

Hohe Qualität erreichen Sie durch Erhöhung der drei (besonders Genauigkeit und Maximum Samples) eben genannten Parameter.

Der AO zugrundeliegende Algorithmus ist komlex und soll hier nicht Thema sein. Nur so viel: Zum Rendern des Effektes werden Samples benötigt. Je mehr davon berechnet werden, desto homogener (unkörniger) wird das Rendering, aber desto größer ist die Renderzeit und umgekehrt.

Jetzt könnte natürlich innerhalb der Szene überall eine maximal große Anzahl an Samples berechnet werden. Dies würde allerdings sehr, sehr lange dauern und wäre auch ziemlich sinnlos, da es in der Szene viele Bereiche gibt, wo eine relativ kleine Anzahl von Samples ausreichen würde.

Daher gibt es die beiden Parameter Minimum Samples und Maximum Samples, die jeweils für unkritische bzw. kritische Bereiche (und eine Interpolation zwischen beiden in den Bereichen dazwischen) herangezogen werden.

Der Parameter Genauigkeit entscheidet darüber, wo und in welcher Zahl die Samples verteilt werden müssen, um zu einem möglichst guten Ergebnis zu kommen. Es werden bis zu Maximum Samples viele Samples in kritischen Bereichen herangezogen.

Der Parameter Genauigkeit hat daher am meisten Einfluss in kritischen Bereichen, da hier hohe Werte zu mehr Samples führen, während er in unkritischen Bereichen eher wenig von Belang ist und die von Minimum Samples vorgegebene Anzahl verwendet wird.

Beispiel

Die folgende Szene wurde jeweils mit variierenden Werten für diese Parameter gerendert:

Zusätzlich wurde die relative Renderzeit (pro Spalte) vermerkt, um einen Eindruck zu erhalten, wie sich diese bei Änderungen der verschiedenen Parametern auswirkt.

Konstant für alle Abbildungen: Minimum Strahlenlänge 0, Verteilung 100 und Kontrast 10.

Minimum Samples [1..10000]

Definieren Sie hier die Anzahl an Samples, die in unkritischen Bereichen verwendet werden soll.

Maximum Samples [1..10000]

Definieren Sie hier die Anzahl an Samples, die in kritischen Bereichen verwendet werden soll. Die genaue Anzahl wird jeweils dynamisch in Abhängigkeit von Genauigkeit verteilt (s.a. Genauigkeit).

Kontrast [-100..100%]

Regeln Sie hiermit den Kontrast des AO-Effektes. Es sind auch negative Werte möglich!

Himmels-Umgebung berücksichtigen

AO-Shader im Umgebungs-Kanal, aktivierte Option Himmels-Umgebung einbeziehen, keine Lichtquelle vorhanden.

Wenn AO im Material-Kanal Diffusion verwendet wird, ist es nötig, eine separate Lichtquelle (und sei es nur die Lichtautomatik) einzusetzen.

AO kann auch ohne Lichtquelle funktionieren, indem das Himmel-Objekt als Beleuchtung verwendet wird. Wenn die Option Himmels-Umgebung einbeziehen aktiviert ist, wird auf das Ergebnis von AO noch die reflektierte Himmelsfarbe multipliziert. Dazu muss AO im Material-Kanal Umgebung oder auch Leuchten platziert werden.

Hinweis:
Beachten Sie, dass es im Render-Tag auch eine Option Sichtbar für AO gibt. Sie können damit ein separates Himmel-Objekt nur für AO definieren.

Transparenz auswerten

Aktivierte Option Transparenz auswerten mit von links nach rechts sinkender Transparenz

Die aktivierte Option sorgt für die Auswertung von Transparenzen, sei es aufgrund des Material-Kanals Transparenz oder auch Alpha. Dabei wird der Transparenzgrad mit berücksichtigt: eine halb transparente Kugel wird also trotz aktivierter Option auch etwas AO verursachen.

Nur Eigenbeschattung

Links Option Nur Eigenbeschattung deaktiviert, rechts aktiviert; Boden und Wand sind separate Objekte.

Die Aktivierung dieser Option sorgt dafür, dass sich separate Objekte nicht gegenseitig, sondern nur sich selbst sehen.

Gegenrichtung

Bei Aktivierung dieser Option drehen Sie die Wirkung des AO um: es werden nicht mehr Ecken und Löcher ermittelt, sondern im Gegenteil nach außen zeigende Kanten und Spitzen. Stellen Sie sich eine Kugel um das Objekt positioniert vor: je mehr Fläche ein Punkt von der Kugel sieht, desto (voreinstellungsgemäß) dunkler berechnet AO diesen Punkt.

Wozu soll das gut sein?

Nun, sollen z.B. exponierte Stellen materialmäßig anders beschaffen sein als der Rest, packen Sie den AO-Shader einfach in den Alpha-Kanal und schon wirkt das entsprechende Material nur auf nach außen ragende Kanten und Spitzen:

Mit dieser Option lassen sich Effekte auf außen liegende Ecken und Kanten beschränken.

In obiger Abbildung sehen Sie links Abnutzungserscheinungen und rechts eine schnell berechnete Subsurface Scattering-Imitation an Ecken und Kanten.