Dieser Artikel erschien urpsrünglich in der DP 05 : 2019.
Die Path Tracing Render Engine Cycles steckt inzwischen in vielen Programmen oder ist wie im Falle von Cinema 4D als Cycles 4D in Form eines Plug-ins erhältlich. Die hauptsächliche Entwicklung geschieht aber immer noch im Blender-Umfeld, weshalb eine neue Blender-Version genau der richtige Zeitpunkt ist, sich die neuen Features und Optimierungen anzusehen.
Neben Preview-Builds für Blender 2.8 konnten über den Buildbot auch Ver sionen von Blender 2.79 herunterge- – laden werden, die die Verbesserungen von Cycles inkorporiert hatten. Profis konnten also schon lange von den neuen Features und schnellerem Rendern profitieren. Mit Blender 2.8 wird die neue Version von Cycles jetzt erstmals einem breiteren Publikum zugänglich.
Mehr Power
Wie üblich wurde bei Cycles an Performance und Ressourcenverbrauch gearbeitet. Sowohl für CPU, als auch GPU-Rendering mit OpenCL oder CUDA gab es Verbesserungen. So können jetzt Grafikkarte und Hauptprozessor auch mit CUDA gemeinsam an einem Bild rendern, wobei eine kleine Tile Size von beispielsweise 16 x 16 oder 32 x 32 Pixeln für beide Hardware-Gattungen optimal sein sollte. Daher könnten diese Einstellungen in zukünftigen Blender-Versionen verschwinden, ein Schicksal, das die Option Transparent Shadows schon getroffen hat, da mit ihr auf keiner Architektur mehr eine Performance-Einbuße zu erwarten ist.
Wer mit CUDA rendert, muss jetzt keine Angst mehr haben vor einem Out-of-Memory-Fehler, denn Cycles kann jetzt Daten, die nicht mehr in den Grafikspeicher passen, in den normalen Arbeitsspeicher des Computers auslagern. Das kommt aber mit Einbu- ßen bei der Performance.
Hardware-Unterstützung geht zurück
Leider kann CUDA-Rendering nicht mehr mit Karten der 4xx- und 5xx-Serien genutzt werden, ebenso wenig auf 32-Bit-Systemen. Auf Apple-Systemen kann nicht mehr mit OpenCL gerendert werden aufgrund von Compiler-Problemen und der Tatsache, dass Apple OpenCL auf längere Sicht nicht mehr unterstützen möchte.
Motion Blur
Bewegungsunschärfe ist bei Path Tracing Engines ein großes Thema. Cycles kann die Bewegung von Objekten und der Kamera beliebig fein abtasten, was zum Beispiel simulierte Langzeitbelichtungsaufnahmen möglich macht. Neu ist außerdem, dass die Bewegungsunschärfe auch bei animierter Skalierung möglich ist.


Cryptomatte
Cycles kann nun eine Cryptomatte ausgeben, wodurch sich ein gerendertes Bild segmentieren lässt. Das ist deutlich effektiver als die bisherigen ID-Passes für Objekte und Materialien und unterstützt auch gleich noch Bewegungsunschärfe, Tiefenunschärfe, Transparenz und Antialiasing. Und da es sich dabei um einen offenen Standard handelt, können diese Informationen nicht nur mit dem Blender Compositor, sondern in allen Programmen genutzt werden, die Cryptomatte unterstützen.
Ambient Occlusion
Statt eines reinen Shaders kann Cycles Ambient Occlusion (AO) jetzt auch als Farbe oder Float ausgeben. Damit kann das Feature endlich zum Texturieren und in Kombination mit anderen Shadern eingesetzt werden. Bisher musste AO entweder gebacken werden, oder es war nur rein der Shader verfügbar.
Vector Displacement
Cycles unterstützt in Blender 2.8 Vector Displacement in drei Dimensionen. Bisher funktionierte das Displacement in Cycles nur in Richtung der Normalen anhand von Graustufenbildern, ähnlich wie Bump Maps. Jetzt können die drei Raumdimensionen separat in den Farbkanälen eines Bilds gespeichert werden. Dadurch wird auch möglich, ganze Objekte in Bildern zu speichern (zum Beispiel relativ zum Default Cube). Das geschieht dann am besten im Object Space, welcher etwas schneller rendert als der Tangent Space, der für animierte Objekte geeignet ist, bei denen das Displacement der Deformation der Oberfläche folgen muss.
Der bisherige graue Displacement-Eingang des Output-Nodes ist weggefallen und durch einen blauen Vektor-Eingang ersetzt worden. Für die Konvertierung des bisherigen eindimensionalen Displacements zur neuen Vektor-Version existiert ein eigener Node.



Dicing Cam
Adaptive Subdivisions unterteilen Objekte jetzt umso weniger, je weiter sie vom Sichtfeld der Kamera entfernt sind. Das spart Rechenzeit und Arbeitsspeicher, kann bei Animationen aber zu einem Plopp-Effekt beziehungsweise Flackern von Schatten führen. Abhilfe schafft dann eine eigene Dicing Cam, die den gesamten Bereich der Animation überblickt und dadurch für eine konstante Tesselierung sorgt.
Bevel im Shader
Wer häufiger mit aus CAD-Programmen importierten Daten arbeitet, weiß, dass der Bevel-Modifier nicht bei jeder Geometrie eine akkurate Kante erzeugen kann. Dem Bevel Shader ist die Topologie des Modells hingegen egal, weshalb er in einem solchen Fall die besseren Ergebnisse erzielen kann. Diese Unabhängigkeit kann aber gerne 20% Renderzeit kosten, weshalb man wenn möglich weiterhin den Bevel Modifier einsetzen sollte.
Random Walk SSS
Der Subsurface Scattering (SSS) Shader beherrscht jetzt die Random-Walk-Methode. Diese steht auch für SSS in der Principled BSDF zur Verfügung.
Sie simuliert echte Volumenstreuung im Objekt und ist besonders für dünne Objekte geeignet. Auch Geometrie wird damit feiner dargestellt.
Die Objekte müssen dafür aber geschlossen sein. Überlappende Flächen und Löcher führen bei Random Walk SSS zu Artefakten. Außerdem kann in flächigen Bereichen mehr Rauschen auftreten als bei anderen SSSMethoden.


Principled, principled, principled
Die Principled BSDF hat nun Transparenz bzw. Alpha und Emission integriert, und es gibt nun zwei weitere Principled Shader. Die Principled Hair BSDF ist ein Haar-Shader, bei dem die Farbe der Haare entweder direkt oder über Eigenschaften der Haare wie die Melanin-Konzentration oder den Absorptionskoeffizienten angegeben werden kann. Man kann damit also einerseits eher künstlerisch vorgehen, andererseits auch in der realen Welt gemessene Werte übernehmen. Der eine oder andere hat Ergebnisse dieses Shaders schon gesehen, denn er wurde erstmals von Disney im Film „Zootopia“ eingesetzt.
Ein weiterer neuer Shader in der Principled-Reise ist die Principled Volume BSDF, die die Darstellung von Feuer und Rauch vereinfacht. Für Rauch mussten bisher Volume Scatter und Volume Absorption kombiniert werden, bei Feuer kam dann noch ein Emission Node dazu. Die Principled BSDF vereint alle diese Shader in einem und holt sich die Volumendaten automatisch, wenn das Objekt, dem das Material zugewiesen ist, die Domain einer Feuer- oder Rauchsimulation ist.
Fazit
Cycles ist in Blender 2.8 schneller, ressourcenschonender und kompatibler zu gängigen Workflows geworden. Die neuen Principled Shader sparen Arbeitszeit und ermöglichen auch technisch weniger versierten Nutzern gute Ergebnisse. Wenn man noch die vielen weiteren neuen Features betrachtet, zeigt sich, dass Cycles auf dem richtigen Weg ist.
