Referenz Cinema 4D Weitergehende Funktionalitäten ProRender ProRender
Funktion verfügbar in CINEMA 4D Visualize, Broadcast, Studio
ProRender

Offline Vorschau Allgemein Multi-Passes

Vorschau

Die Einstellungen des Tabs "Vorschau" gelten für das interaktive Rendern in einer Ansicht (Ansichtsmenü "ProRender").

Hinweis:
Beachten Sie, dass die Vorschau aufgrund ihrer reduzierten Einstellungen stark vom Offline-Rendering abweichen kann. Das ist insbesondere bei transparenten Objekten (z.B. aus Glas) der Fall, da die Strahltiefe mit 3 sehr niedrig angesetzt ist. In solchen Fällen sollten Sie den entsprechenden Wert dem Offline-Pendant angleichen.

Rendermodus

Die verschiedenen Rendermodi.

Sie können hier verschiedene Rendermodi einstellen:

Global Illumination

Der voreingestellte und wichtigste Modus. "Global Illumination" bedeutet für den ProRender GI, Schatten, Reflexionen, Brechung in Transparenzen. Also alle Funktionalitäten, die mit hin und her springenden oder reflektierten bzw. gebrochenen Strahlen zu tun haben.

Ambient Occlusion

Hier wird Ambient Occlusion (je verdeckter ein Bereich, desto dunkler, s.a. Ambient Occlusion) berechnet.

Direktes Licht

In diesem Modus gibt es kein von anderen Objekten reflektiertes Licht – also keine GI –, sondern nur die direkten Lichtwirkungen inkl. Schatten. Spiegelungen (Ausnahme: Reflexionen von Lichtquellen) und Transparenzen sind ebenfalls deaktiviert.

Drahtgitter

Dieser Modus rendert die Dreieckskanten (Vierecke werden intern in Dreiecke zerlegt) der Szenengeometrie grau auf weißem Hintergrund. Das kann ganz praktisch sein, wenn Sie z.B. die Polygontopologie darstellen wollen.

Diffus

Manchmal ist es angeraten, zu Beleuchtungszwecken nur die untexturierte Szene rendern zu lassen. Dafür ist dieser Modus vorgesehen: er belegt alle Objekte mit einem grauen, diffusen Material. Ohne Texturen rendert die Szene wesentlich schneller und aufgrund des homogenen Shadings lassen sich Lichtquellen im Zusammenspiel mit der blanken Geometrie gut beurteilen.

Schärfentiefe

Schalten Sie hiermit die Schärfentiefe (inkl. evtl. Bokehs, s.a. Blendenform des Physikalischen Renderes) für den ProRender an oder aus. Beachten Sie, dass der Renderer hierbei meist stark gefordert wird, um den Noise verschwinden zu lassen. Allerdings trägt die Schärfentiefe stark zu einem Fotorealistischen Rendering bei.

Allgemeine Informationen zu dieser Funktionalität finden Sie unter Schärfentiefe.

Max. Strahltiefe [1..2147483647]

Beim Rendern werden durch jeden Ausgabepixel sehr viele Strahlen in die Szene geschossen. Je nachdem, auf welche Art von Oberfläche solch ein Strahl trifft, wird er aufgespalten: so kann er z.B. reflektiert und/oder gebrochen werden, bei matten (unscharfen) oder diffusen Oberflächen wird sogar eine Vielzahl von Strahlen mit unterschiedlichem Winkel reflektiert bzw. gebrochen:

So sind die Strahltypen definiert. Die Tiefeneinstellungen geben dabei die Anzahl der Reflexionen/Brechungen an pro Strahltyp (Ausnahme: Max. Strahltiefe).

Strahlen hüpfen also millionenfach in der Szene hin und her, um Farben und Helligkeiten aufzusammeln ("samplen"). In der Realität passiert dies unendlich oft. In Cinema 4D muss es zu einem Ende kommen, da sonst die Berechnung jedes Pixels unendlich lange dauern würde. Daher muss die Anzahl der Reflexionen bzw. Brechnungen begrenzt werden.

Jeder dieser Strahltypen kann separat definiert werden, um die Renderzeiten optimal an Ihre Szene anzupassen. Sie können hier also ganz gezielt Werte reduzieren, um die Renderzeit zu verkürzen.

Allgemein gilt ungefähr: Die Unterschiede im Rendering bei einem Wert von 1, 2 oder 3 sind groß, während die Unterschiede höherer Werte immer geringfügiger ausfallen. Das ist ja auch nicht weiter verwunderlich, da z.B. die 7. Reflexion einer hellen Lichtquelle so dunkel ist, dass sie kaum noch ins Gewicht fällt, wohl aber Renderzeit verbraucht.

Allgemein gilt für alle Tiefen-Einstellungen: je größer der Wert, desto länger die Renderzeit. Je kleiner, desto kürzer dieselbe, allerdings treten bei kleinen Werten – so in der Region 0-3 – dann zunehmend Artefakte auf.

Bei der Max. Strahltiefe handelt es sich um die Anzahl der Reflexionen, die ein Strahl für spiegelnde Fläche (Rauigkeit = 0, also scharfe Spiegelungen) nehmen kann. Darüber hinaus stellt er einen Maximalwert für die folgenden 4 anderen Tiefen-Parameter dar (selbst wenn z.B. bei Brechungstiefe 12 eingestellt ist, ist die hier eingestellt Max. Strahltiefe gültig, sofern sie niedriger ist).

Beachten Sie, dass Caustics erst ab einer Max. Strahltiefe von 2 auftreten können.

Diffustiefe [0..2147483647]

Hierbei handelt es sich um die Anzahl der Reflexionen, die ein Strahl für diffuse Flächen (Lambert, Oren-Nayar) nehmen kann. Also den Effekt, den man gemeinhin als GI bezeichnet.

Je höher Sie diesen definieren, desto heller erscheint die Szene, allerdings werden Sie ab einer Diffustiefe von 4 oder 5 kaum noch Unterschiede feststellen, da zunehmende Reflexionen immer weniger zur Gesamtbeleuchtung beitragen. Ist das Rendering zu dunkel, arbeiten Sie lieber mit Tone Mapping, anstatt die Diffustiefe immer weiter zu erhöhen.

Matttiefe [0..2147483647]

Hierbei handelt es sich um die Anzahl der Reflexionen, die ein Strahl für eine matte Spiegelung (Rauigkeit > 0) nehmen kann.

Je höher die Rauigkeit, desto kleiner kann die Mattiefe gestellt werden, ohne dass sich nachteilige Artefakte ergeben.

Kleinere Werte ergeben kürzere Renderzeiten (bzw. mehr Iterationen pro Zeit).

Brechungstiefe [0..2147483647]

3 transparente Ebenen gerendert mit verschiedenen Brechungstiefen. Für voluminöse Objekte (hier im Beispiel handelt es sich aus Anschauungsgründen um Ebenen ohne Dicke), müsste die Brechungstiefe für ein entsprechendes Ergebnis jeweils verdoppelt werden.

Die Brechungstiefe definiert die Anzahl von Brechungen, die bei einem klaren, transparenten Glas zugelassen werden dürfen. Ist der Wert nicht ausreichend, wird die Strahlverfolgung mit der Farbe Schwarz abgebrochen.

Außerdem wirkt die Brechungstiefe für das Subsurface Scattering (Option Transparenz aktiviert) und muss mindestens 2 betragen. Die Tiefe gilt jedoch nur für den Ein- und Austritt des streuenden Objekts (Streuung innerhalb des Objekts ist hiervon unabhängig).

Brechungstiefe (matt) [0..2147483647]

3 matt-transparente Ebenen gerendert mit verschiedenen Brechungstiefen. Für voluminöse Objekte (hier im Beispiel handelt es sich aus Anschauungsgründen um Ebenen ohne Dicke), müsste die Brechungstiefe für ein entsprechendes Ergebnis jeweils verdoppelt werden.

Die Brechungstiefe (matt) definiert die Anzahl von Brechungen, die bei einem matten Glas zugelassen werden dürfen. Ist der Wert nicht ausreichend, wird die Strahlverfolgung mit der Farbe Schwarz abgebrochen.

Außerdem wirkt die Brechungstiefe (matt) für das Subsurface Scattering (Option Transaprenz deaktiviert) und muss mindestens 2 betragen. Die Tiefe gilt jedoch nur für den Ein- und Austritt des streuenden Objekts (Streuung innerhalb des Objekts ist hiervon unabhängig).

Schattentiefe [1..2147483647]

Diese Einstellung kommt bei transparenten bzw. mit Alphakanälen belegten Materialien zum Tragen: zur Schattenberechnung sendet ProRender bei jeder sichtbaren Oberfläche Schattenstrahlen zu den Lichtquellen (bzw. allen lichtabstrahlenden Objekten). Bei jedem Transparenz- bzw. Alphamaterial, das zwischen Oberfläche und Lichtquelle liegt, kommt Brechungstiefe zum Einsatz:

Verschiedene Schattentiefen und deren Renderergebnis bei mehreren Transparenzen.

Dieser Parameter gibt die Anzahl der Transparenzen/Alphas an, die der Schattenstrahl auf dem Weg zur Lichtquelle berücksichtigt.

Beachten Sie, dass brechende Transparenzen (also Brechung ungleich 1) nicht zu Schattenstrahlen zählen (dafür sind Brechungsstrahlen zuständig, die Caustics bilden können).

Bei voluminösen Objekten zählen sowohl Vorder- als auch Rückseite jeweils als eine Transparenz.

Ambient Occlusion Strahllänge [0.001..+∞m]

Von links nach rechts steigende Werte für Ambient Occlusion Strahllänge.

Mit diesem Wert legen Sie fest, bis zu welcher Entfernung sich Oberflächen gegenseitig "sehen" und sie somit abgedunkelt werden. Kleine Werte färben nur Bereiche in der Nähe von aufeinander stoßende Flächen, während größere Werte dem Effekt einer diffusen Beleuchtung ähneln.

Samples pro Iteration [1..64]

Beim Rendern wird die Szene aus Kamerasicht in ein Raster (=Ausgabeauflösung) aus Pixeln aufgeteilt. Für jedes Pixel und jede Iteration wird eine Anzahl an Strahlen (Samples pro Iteration) in die Szene geschossen. Damit es zu keinen stufigen Kanten (stellen Sie sich z.B. eine schräge Würfelkante vor, die durch die unten abgebildeten Raster verläuft, s.a. Wie funktioniert Antialiasing (für den Standard-Renderer)) kommt, werden die Strahlen über die ganze Pixelfläche verteilt und die damit gewonnenen Samples pro Pixel zusammengefasst (=Pixelfarbe).

Die beispielhafte Sampleverteilung eines 3*3 Pixel-Renderings pro Iteration.

Mit diesem Parameter können Sie also dieSample-Anzahl pro Iteration definieren:

Für ein längeres Rendering ist dieser Parameter allerdings unerheblich: das Ergebnis ist dasselbe.

Wozu ist diese Einstellung dann gut? Sie können für den Bild-Manager damit neben der Iterationsdauer die Qualitätssprünge zwischen den einzelnen Iterationen beeinflussen: viele Samples pro Iteration ergibt einen größerer Unterschied zwischen den Iterationen, wobei jede Iteration länger dauert und umgekehrt.

Ob Sie also kleine Iterationsanzahl und viele Samples oder große Iterationsanzahl mit wenig Samples definieren, ergibt prinzipiell bei gleicher Renderdauer annähernd gleiche Qualität.

Wenn man die im nächsten Abschnitt beschriebenen Filter außer Acht lässt, werden schlußendlich alle Samples eines Pixels zusammengefasst und das Pixel entsprechend berechnet.

Filter
Filtergröße [0.5..64]

Im vorherigen Abschnitt wurde beschrieben, wie die Samples über die Pixelfläche verteilt werden. Mit den Filtern können Sie nun definieren, wie diese Samples im Bereich der Filtergröße bei der Berechnung jedes Pixels Einfluss finden.

Bei folgendem Rendering wurde ein Ausschnitt vergrößert, um die Filtereffekte besser erkennen zu können.

Beim folgenden Bild lohnt es sich durchaus, das Hilfefenster groß zu ziehen, um die Details besser erkennen zu können.

So werden die Samples ausgehend vom Pixelmittelpunkt bei der Berechnung der Pixelfarbe gewichtet (jeweils Filtergröße 1, 1.5, und 2).

Die Filterkurven gehorchen verschiedenen Funktionen, bei der die X-Achse die Pixelmitte und die Y-Achse die Wichtung jedes Samples beschreibt.

Die Filtergröße (in Pixel) definiert, wie viele benachbarte Pixelflächen um das aktuelle Pixel verwendet werden, um sämtliche darin enthaltenen Samples zusammenzufassen. Je größer der Wert, desto unschärfer werden die Details. Bei einem Wert von 0.5 wird nur die Fläche des aktuellen Pixels verwendet.

Strahldichte beschneiden
Strahldichte beschneiden Wert [1..+∞]

Links ohne, rechts mit Strahldichte beschneiden (Fireflies, aber auch Caustics sind verschwunden).

Mittels des Wertes Strahldichte beschneiden, wird die Strahldichte (oder vereinfachend formuliert: die Helligkeit) reflektierter/gebrochener Strahlen beschränkt. Je kleiner der Wert, desto stärker die Beschränkung, während größere Werte mehr Helligkeit durchlassen. Direkte Reflexionen (also der Strahltiefe 1) sind davon nicht betroffen. Knackige HDRI-Spiegelungen bleiben also erhalten.

Mit dieser Einstellung können u.a. Fireflies (s.a. Firefly Schwellwert) eingeschränkt werden.

Achtung: diese Einstellung hat starke Auswirkungen auf Caustics. Sie verlieren ihre Helligkeit. Von einem physikalisch korrekten Rendering – was natürlich längst nicht immer das Maß aller Dinge ist – kann man dann nicht mehr unbedingt sprechen. Wenn Sie sich obige Abbildung betrachten, sehen Sie, wie sich links an erster markierter Stelle ein Caustic andeutet, was rechts verschwunden ist.

Hinweis:
Die Strahldichteneinstellungen genauso wie der im Folgenden beschriebene Fireflyfilter verlieren bei Einsatz des Denoisers stark an Bedeutung. Der Denoiser filtert Firefly-Effekte zuverlässig aus!

 Progressives Rendern

Endbedingung

Zu den Charakteristiken von ProRender gehört das progressive, also fortschreitende Rendern ohne zunächst zu einem definierten Ende zu kommen. Da aber jedes Rendering irgendwann beendet werden muss (denken Sie z.B. an die einzelnen Bildern von Animationen), können hier einige Endbedingungen eingestellt werden:

Iterationsanzahl [1..2147483647]

Zunächst zur Erklärung, was im Zusammenhang mit ProRender mit "Iterationen" gemeint ist. Eine Iteration bedeutet: der Renderer hat einmal jedes Pixel berechnet oder anders gesagt: wenn das Antialiasing ausgeschaltet wurde, ist für jedes Pixel ein Sample genommen worden. Mit höheren Antialiasing-Einstellungen werden für jede Iteration pro Pixel mehrere Samples genommen. Je größer das Bild und komplexer die Szene (z.B. viele Spiegelungen und Brechungen), desto weniger Iterationen schafft die Grafikkarte in der gleichen Zeit (im Bild-Manager wird beim Rendern in der Statuszeile übrigens fortwährend die aktuelle Iterationsanzahl eingeblendet).

Wenn Sie also bei Ihrer Szene feststellen, dass die Qualität bei einer Iterationsanzahl von z.B. 1000 gut genug ist, so können Sie diesen Wert hier eintragen, um z.B. Animationen in dieser Qualität zu rendern.

Zeit (s) [0..2147483647]

Geben Sie hier die Zeit in Sekunden an, die sich der Renderer pro Bild genehmigen darf. Beachten Sie, dass diese Zeit nicht absolut zu sehen ist, da der Renderer die aktuelle Iteration noch zu Ende bringt, bevor er abbricht. In Wirklichkeit wird also etwas mehr Zeit pro Bild benötigt.

 Vorschauauflösung

Links: beispielhafte Darstellung während des Navigierens, rechts einige Zeit nach Kamerastillstand.

Für die Verwendung von ProRender als Vorschau können hier einige Einstellungen vorgenommen werden, um das interaktive Navigieren zu beschleunigen. Die Ansicht schaltet dabei (und bei anderen relevanten Szenenänderungen) kurzzeitig auf eine geringere Auflösung um.

Max. Auflösung

Beim Navigieren in der Vorschau wird anfänglich auf eine kleinere und schnellere Auflösung umgeschaltet. Bei Stillstand der Kamera wird nach kurzer Zeit auf die hier definierte Auflösung umgeschaltet. Beim Navigieren ist das Flackern der Darstellung gegenüber früheren Versionen stark reduziert und ermöglicht so eine flüssigere Darstellung.

 Voreingestellte Texturgröße

Der ProRender hat die derzeitige Limitation, nicht alle Shader nativ auf der Grafikkarte berechnen zu können (s.a. Limitationen). Diese Shader müssen in Bitmaps umgewandelt werden, die dann in die Grafikkarte geladen werden.

Deshalb können Sie hier die Texturgröße von entsprechenden Shadern global festlegen (beachten Sie, dass die Texturgröße auch auf Shaderebene entsprechender Shader, nämlich in deren Tab "Basis" festgelegt werden kann).

Bei Renderbeginn werden alle Shader in Bitmaps umgewandelt, was durchaus einige Zeit dauern kann.

Links kleine (128*128), rechts große (1280*1280) Texturgröße.

Texturgröße X [1..8192]
Texturgröße Y [1..8192]

Geben Sie hier die Texturgöße in Pixeln an. Seien Sie hier etwas vorsichtig, da der Grafikkartenspeicher begrenzt ist und einige Grafikkarten einfach sang- und klanglos abstürzen, wenn der Speicher voll ist.

Texturbittiefe

Hier kann zwischen 8 und 32 Bit gewählt werden (falls Sie Shader mit Farben verwenden, die über die normalen 8 Bit hinausgehen).