Cinema 4D/BodyPaint 3D Programmdokumentation Referenz Cinema 4D Cinema 4D Visualize, Broadcast, Studio
Funktion verfügbar in CINEMA 4D Visualize, Broadcast, Studio

ProRender

Allgemeines

Hinweis:
Beachten Sie, dass in folgenden Fällen Shader für die Grafikkarte kompiliert werden müssen ("kompiliere Shader" in der Statuszeile), die dann in Ihrem Benutzerverzeichnis gespeichert werden:

  • Rendern mit einer neuen Cinema 4D Version.
  • Rendern mit einer neuen Grafikkarte.
  • Nach dem Aktualisieren des Grafikkarten- bzw. OpenCL-Treibers.
  • Aktivieren der Bewegungsunschärfe u.a. Änderungen an den Rendervoreinstellungen.
  • Aktivieren von Subsurface Scattering, Verwenden von verschiedenen Noises und anderen Shadern.

Anders als in Cinema 4D R19 geschieht das nicht für alle Shader auf einmal, sondern mehr nach Bedarf, was minutenlange Pausen vor Renderbeginn selten werden lässt.

Das kann mitunter einige Zeit in Anspruch nehmen, in denen Cinema 4D wie eingefroren erscheint. Haben Sie hier bitte etwas Geduld.

Hinweis, der 2.
Für Windows gilt: Sollten Sie keine OpenCL 1.2-fähige Grafikhardware verwenden (z.B. bei auf Mainboards verbauten Grafikprozessoren oder sehr alten Grafikkarten), müssen OpenCL-Treiber der CPU installiert werden. Sie erhalten andernfalls eine Cinema 4D-Fehlermeldung.

Sie finden die CPU-OpenCL-Treiber hier:

  • Intel-Prozessoren: https://software.intel.com/en-us/articles/opencl-drivers#latest_CPU_runtime
  • AMD-Prozessoren: http://support.amd.com/en-us/kb-articles/Pages/OpenCL2-Driver.aspx

Der ProRender ist ein spezieller, physikalisch korrekt rechnender Renderer, der auf Grafikkarten (auch mehrere in einem Rechner verbaute können gleichzeitig genutzt werden) läuft. Dadurch, dass Grafikkarten auf Renderaufgaben spezialisiert sind, rechnen diese meist um ein vielfaches schneller als handelsübliche CPUs. Sollte Ihre Grafikkarte nicht kompatibel sein, kann der ProRender auch – langsamer – auf der CPU laufen (in einem allerdings experimentellen Modus).

Der ProRender kann in den Rendervoreinstellungen ausgewählt werden. Ist das geschehen, kann er wie gewohnt im Bild-Manager, einer Ansicht oder mittels des Interaktiven Renderbereichs rendern.

Darüber hinaus kann er jetzt als interaktiver Vorschaurenderer (aktivierbar im Menü "ProRender" in der Ansicht) funktionieren.

Hier in Kürze die Vor- und Nachteile eines GPU-Renderers.

Vorteile

Nachteile

Noise und Renderzeiten

Im Vergleich zu den älteren Cinema 4D Renderern vollzieht sich das Rendern in der Ansicht bzw. im Bild-Manager nicht der Reihe nach Bucket für Bucket, sondern im kompletten Bild mit einem sich mit fortschreitender Renderzeit auflösendem Noise:

Von links nach rechts zunehmende Renderzeit.

ProRender feuert für jedes Pixel eine Vielzahl von Strahlen ("Samples") in die Szene. Das Ergebnis (=Farbe) eines jeden solchen Samples wird für jedes Pixel fortwährend berücksichtigt und im Bild-Manager zu den vorherigen Samples hinzugefügt und diese insgesamt gemittelt. Mit fortschreitender Zeit ergeben sich pro Pixel also immer mehr Samples: das Ergebnis wird besser.

Der fundamentale Unterschied zu den älteren Renderern besteht in der theoretischen "Unendlichkeit" dieses Vorganges. Das Renderergebnis wird mit der Zeit immer besser/genauer. Die noisige/körnige Anmutung des Bildes wird immer geringer, bis der Noise nach einer unendlichen Zeit nicht mehr vorhanden ist.

Natürlich hat niemand Zeit, unendlich lange zu rendern; das ist auch überhaupt nicht nötig. Der Rendervorgang kann jederzeit abgebrochen werden: entweder manuell (wenn Sie der Meinung sind, das Bild ist gut genug) oder mittels einiger Endbedingungen (z.B nach einer vorgegebenen Zeit).

Das menschliche Auge ist es von Fotos und Videos her gewohnt, einen gewissen, hochfrequenten Noise in einem Bild als realistisch zu interpretieren. Der Sensor in einer digitalen Kamera produziert ebenfalls einen solchen Noise. Somit ist ein Noise wesentlich weniger störend, als ein niedrig frequenter Noise (= größere, mitunter flackernde Flecken im Bild), der beispielsweise beim Rendern mit einem Irradiance Cache zustande kommt.

Beachten Sie, dass es innerhalb gewisser Grenzen möglich ist, Noise mittels anderer Programme (z.B. Photoshop) auf Kosten von Bilddetails zu glätten (dazu darf der Noise aber nicht zu stark sein). Allerdings gilt: echte Renderzeit lässt sich durch nichts ersetzen.

Physikalisch korrektes Rendern und die Cinema 4D Parameter

Der ProRender unterstützt nicht alle von Cinema 4D bereit gestellten Einstellungen. Dadurch, dass er auf physikalisch korrektes Berechnen getrimmt ist, können viele Einstellungen und Workflows, die diesem physikalischen Ansatz widersprechen, nicht genutzt werden.

Wenn Sie z.B. mal einen Blick auf die diversen Einstellungen einer Lichtquelle werfen: es gibt in der Realität weder Lichter, die eine lineare Helligkeitsabnahme, noch harte Schatten (sondern stets Flächenschatten), noch radiale Farbabnahmen etc. haben. Genauso fallen für die Kamera (z.B. Stereorendering, Linsenverzerrung etc.), wie auch für Materialien (hier haben z.B. die Materialkanäle Diffusion, Umgebung, Nebel, Glühen und Illumination keine Funktion) einige Einstellungen weg. Multi-Passes, sowie einige Objekte (z.B. Boden-, Hintergrund-, Umgebungs-Objekt etc.) funktionieren ebenfalls nicht. Auch das Render-Tag wird nur teilweise unterstützt.

Sie sehen, die Einschränkungen betreffen primär die für das Rendern wichtige Bereiche wie Lichtquellen, Kamera, Materialien.

Hinweis:
Bei Auswahl von ProRender werden alle Parameter von Materialien, Lichtern, Kameras, Tags und Rendereinstellungen ausgegraut bzw. ausgeblendet, die nicht mit dem ProRender funktionieren! Unrealistische Einstellungen wie z.B. negative Lichtintensität können zwar vorgenommen werden, bleiben aber ohne Wirkungen.

Beachten Sie auch die Limitationen.

Andererseits müssen Sie sich um viele Einstellungen überhaupt nicht mehr kümmern. Zum Beispiel:

Allgemein lässt sich festhalten: beim Einsatz von ProRender sollten Sie möglich wenig "tricksen", sondern beim Aufbau der Szene darauf achten, dass sie möglichst der Realität nachempfunden ist. Beachten Sie z.B. folgendes:

ProRender und Lichtquellen

Lichtquellen gehören für einen Renderer zu den wichtigsten Elementen. Für maximalen Realismus sollten Sie Flächenlichter (z.B. Physikalisches Licht) verwenden. Es funktionieren zwar auch die Typen Punkt, Spot und Unendlich, allerdings sind diese z.B. im Schattenwurf (harte Raytrace-Schatten) eher unrealistisch, da jede Lichtquelle in der Realität ein Volumen bzw. eine Fläche hat.

ProRender unterscheidet im gerenderten Ergebnis nicht zwischen einem Lichtquellen-Objekt vom Typ Fläche und einem Objekt, das ein leuchtendes Material trägt.

War es bei den GI-Lösungen der Standard-Renderer so, dass die Strahltiefe bei beiden Lichtquellentypen nicht einheitlich war, so verhalten sich beide jetzt gleich. Bei einer Strahltiefe von z.B. 1 werden nur die Oberflächen beleuchtet, die die Lichter direkt "sehen".

Noch einiges Wissenswertes zu Licht:

ProRender und Materialien

Die wichtigste Änderung bzgl. Materialien ist sicherlich der Wegfall der Glanzlicht-Funktionalität. Es gibt für den ProRender "nur" noch Spiegelungen mittels des Reflektivitäts-Kanals (beachten Sie in diesem Zusammenhang den Befehl Neues physikalisches Material). Sie sollten also Flächenlichtquellen oder Polygonlichter verwenden, wenn sich diese direkt auf dem Objekt spiegeln sollen.

ProRender und der Physikalische Himmel

ProRender arbeitet mit dem Physikalischen Himmel zusammen. Allerdings werden nicht alle Funktionalitäten unterstützt. Ähnlich wie Shader, die nicht nativ von der Grafikkarte unterstützt werden, behilft sich ProRender, indem der Himmel (unter Ausschluss aller verwendeten Lichtquellen, die der Physikalische Himmel ansonsten verwendet) intern in ein 2D-Textur gebacken wird. Die Größe der zu backenden Textur kann im Tab "Details" des Physikalischen Himmels unter Textur: Vorschaugröße eingestellt werden.

Alle Effekte des Physikalischen Himmels, die nicht gebacken werden können, kann ProRender auch nicht rendern. Im Umkehrschluss bedeutet das, die für ProRender gültigen Einstellungen finden Sie in den vier Tabs

Nicht funktionale Parameter werden ausgegraut.

Diverses

RELEASE 20

In Cinema 4D R20 werden jetzt der Anzeigefarbe-Shader und der MoGraph Farbe-Shader unterstützt.

Optimale Szenen

Beim GPU-Renderer handelt es sich derzeit um einen "unidirektionalen, unbiased Pathtracer". Solche Renderer sind am besten für folgende Szenen geeignet:

D.h. Szenen, die großzügig ausgeleuchtet sind, mit vielen Bereiche, die direkt von Licht beschienen werden, sind optimal. Hier wird sich der Noise am schnellsten auflösen. Innenraumszenen, die nur durch kleine, wenige Lichtquellen beleuchtet werden, tun sich schwerer als ein zu visualisierendes Objekt, das von allen Seiten von einem HDRI-Himmel umgeben ist.

Das heißt für andere Szenen nicht, dass es nach einer längeren Renderzeit nicht ebenfalls zu guten Ergebnissen kommen kann. Aber: es dauert eben länger, bis sich der Noise klärt.

"Unbiased" bedeutet im wesentlichen, dass bei hinreichend langer Renderzeit ein physikalisch korrektes Ergebnis zu erzielen ist. Im Gegensatz hierzu gibt es die beiden, älteren Standard-Renderer und den Physikalischen Renderer, bei denen es sich um "biased" Renderer handelt. Diese arbeiten oft mit vereinfachenden Tricks, um z.B. Renderzeiten und Speicherbedarf klein zu halten. Hier sind physikalisch korrekte Ergebnisse nicht immer zu erreichen. In den Händen erfahrener Anwender lassen sich mit diesen natürlich trotzdem sehr gute, überzeugende Ergebniss erzielen.

Artefakte an niedrig aufgelösten Objekten

Sollte es bei Reflexionen und Brechungen zu solchen Artefakten (hier an einem niedrig aufgelösten Zylinder) kommen, so erhöhen Sie die Unterteilung (im Beispiel wäre das bei einem Zylinder Segmente Umfang). Die gleiche Problematik samt Lösung kann sich beim Übergang von direkt beleuchteten zu schattigen Bereichen ergeben.

Limitationen

Die folgende Liste erhebt keinen Anspruch auf Vollständigkeit (was im einzelnen nicht unterstützt wird, sehen Sie an den ausgegrauten, bzw. nicht vorhandenen Einstellungen bei Auswahl von ProRender in den Rendervoreinstellungen).