Sculpting backen

Allgemeines

Der ursprüngliche Würfel, der beim Sculpting vielfach unterteilt wurde, taucht beim Backen von Texturen wieder auf. Mit den passenden Texturen verwandelt er sich beim Rendern wieder in das Sculpting-Objekt.

Der große Nachteil des Sculpting sind die hochaufgelösten Objekte, die ohne weiteres mit heutiger Hardware nicht in den normalen 3D-Workflow integriert (Bemalen, Animation etc.) werden können. Wie bringt man nun die kunstvoll gestalteten, mit Details in Geometrie versehenen (oft aus Millionen Polygonen bestehenden) Objekte in den normalen Produktionsablauf?

Ganz einfach: die Details werden in Texturen gebacken und auf die niedrig aufgelösten Objekte (aus denen Sculpting auch mittels interner Unterteilung die hochaufgelösten Objekte erstellte) projiziert. Beim finalen Rendern erscheinen die Objekte dann wieder in großer Detailfülle.

Gehen Sie so vor, wenn Sie ein Sculpting-Objekt backen wollen:

  1. Selektieren Sie das Sculpting-Objekt.
  2. Rufen Sie den Befehl Sculpting backen auf.
  3. Im erscheinenden Dialog geben Sie im Feld "Dateiname" einen Dateipfad an, wo die Texturen gespeichert werden sollen.
  4. Im Tab "Optionen" wählen Sie die zu erstellenden Texturen für die entsprechenden Material-Kanäle (Empfehlung: Displacement für starke Verformungen, Normalen für Details).
  5. Haben Sie sich bei Ihrem Objekt noch nicht um das UV-Mesh gekümmert, wählen Sie bei Optimales Mapping Würfel oder Winkel, ist bereits ein fertig abgewickeltes UV-Mesh vorhanden, wählen Sie Aus.
  6. In der Liste "Quellobjekt" geben Sie die Unterteilungsstufe an, in deren Detailgrad die Texturen (das ist meist die höchste Stufe) gebacken werden sollen.
  7. In der Liste "Zielobjekt" geben Sie die Unterteilungstufe an, in der das neue Objekt polygonal erzeugt werden soll (das sollte eine möglichst niedrige Unterteilungsstufe sein, durchaus auch "Stufe 0" – im Extremfall dann ein Würfel – wenn keine anderen Argumente dagegen sprechen, wie beispielsweise glaubhafte Kollisionen mit Dynamics).
  8. Klicken Sie auf den Button Backen. Nach einem mehr oder weniger langen Moment wird ein neues Objekt mit bereits passend verliehenen Materialien und Material-Tags erzeugt.

Achten Sie darauf, ausreichend große Texturen zu backen, da es ansonsten zu fehlerhaften, finalen Renderings kommen kann.

Allgemeine Hinweise zum guten Gelingen:

Der Dialog " Sculpting-Objekte backen"

Links oben finden Sie eine kleine Vorschau der zu backenden bzw. bereits gebackenen Textur. Beim Rechtsklick auf die Vorschau werden diese Befehle eingeblendet:

Vorschau

Lassen Sie sich hiermit eine niedrig aufgelöste und damit schnelle Vorschau der zu backenden Texturen anzeigen.

Backen

Hiermit backen Sie die ausgewählten Texturen. Achten Sie darauf, im Tab "Backen" unter Dateiname auch einen Dateipfad und -namen anzugeben. Dort landen dann die Bitmaps.

Stopp

Hier kann das Backen der Texturen (was je nach Größe und Komplexität auch lange dauern kann) jederzeit abgebrochen werden.

Tab Backen

Dateiname

Geben Sie hier durch Klick auf den rechts angeordneten Button einen Dateinamen und -pfad an. Hier werden die Texturen gespeichert und dieser (absolute) Pfad wird auch im Material des neu erzeugten Objekts verwendet.

Format/Optionen/Farbtiefe

Wählen Sie hier das Speicherformat samt Farbtiefe aus, in dem die gebackenen Texturen abgelegt werden sollen. Wenn es für bestimmte Formate noch extra einzustellende Optionen geben sollte, können Sie dies durch Klick auf den Button Optionen bewerkstelligen. (s.a. Speichern-Seite).

Bei Displacement sollten Sie grundsätzlich 16 oder 32 Bit verwenden, um spätere Stufenbildung zu verhindern.

Preset

Wählen Sie hier unter einer Reihe von quadratischen Texturgrößen aus.

Proportionen erhalten

Bei aktivierter Option ändert sich bei Änderung eines Wertes von Breite oder Höhe der jeweils andere, damit das Texturseitenverhältnis gleich bleibt.

Breite/Höhe

Stellen Sie hier individuelle Werte ein für die zu backenden Texturgrößen ein.

Pixelrand

Hiermit können Sie einen über die UV-Polygone hinausgehenden Rand (in Pixeln) definieren (s.a. Pixelrand des Material-Backen-Tags). Das kann manchmal nötig sein, um sichtbare Nähte im Rendering zu verhindern. Zu kleine Werte können für Displacements auch zum Erzeugen von ungewollten Spitzen führen.

Einzeldatei

Ist die Option aktiviert, werden die einzelnen Kanäle (Displacement, Normale, Ambient Occlusion) in eine einzige Bitmap-Datei (anstatt für jeden Kanal eine separate Datei anzulegen) als separate Bildebenen gespeichert.

Ergebniskopie erstellen

Bei aktivierter Option wird gleich ein neues Objekt inkl. passender Materialien und Material-Tags erstellt. Ist die Option deaktiviert, werden nur die Texturen gerendert.

Tab "Optionen"

Displacement/Normalen/Ambient Occlusion

Legen Sie hier fest, welche Texturen gebacken werden sollen. Kurz zur Erinnerung, was diese Materialkanäle später machen:

Optimales Mapping

Das UV-Layout des in der Mitte abgebildeten Objekt in den beiden Modi.

Wenn Texturen gebacken werden, muss sicher gestellt sein, das sich die UV-Polygone nicht überlappen.

Wenn Sie in einem vorhergehenden Schritt schon dafür gesorgt haben, dass das bei Ihrem Objekt nicht der Fall ist, dann lassen Sie diese Einstellung auf Aus. Die UV-Koordinaten bleiben dann unverändert (und werden höchstens je nach Zielobjekt weiter unterteilt).

Gleiche Einstellung gilt auch für die mitgelieferten Sculpting-Objekte. Deren UV-Meshes sind alle schon abgewickelt und optimiert.

Wollen Sie an einem selbst modellierten Objekt formen und Sie haben sich über UV-Koordinaten noch keine Gedanken gemacht, dann wählen Sie Würfel oder Winkel.

Aus: Keine Neuordnung der UV-Koordinaten; für das Backen nur dann von Bedeutung, wenn Sie schon ein passendes UV-Mesh haben.

Winkel: Hier werden, wenn möglich, zusammenhängende UV-Meshgruppen erzeugt

Würfel: Das UV-Mesh wird in sehr viele Einzelteile zerlegt.

Obere Stufen einschließen

Um es vorwegzunehmen: diese Option hat nur minimalen Einfluss auf das später gerenderte (zuvor gebackene) Endergebnis. Die Option entscheidet vielmehr, ob das beim Backen erzeugte Mesh strikt einem ausschließlich unterteilten Ausgangsmesh entspricht (Option deaktiviert) oder dieses Mesh schon mit den Auswirkungen auf höreren Unterteilungsstufen (Option aktiviert) vorgenommenem Sculpting versehen ist.

Beispiel:

Das linke (aus einem unterteilten Würfel) geformte Objekt wird gebacken.

Gelegentlich kann die Optionsaktivierung auch dafür sorgen, dass Artefakte (besonders bei Verwendung des Typs RGB (XYZ Tangente)) verhindert werden, indem das Ausgangsmesh schon etwas an die spätere Form angeglichen wird.

Der abgebildete Reifen (geformt auf Unterteilungsstufe 9 eines simplen Würfels) wird gebacken. Im Falle der aktivierten Option (unten) ist der Würfel nicht exakt würfelförmig, sondern etwas verformt (genau so würde das Sculpting-Objekt aussehen, wenn Sie die Unterteilungsstufe auf 0 stellen würden). Bei der deaktivierten Option erhalten Sie einen perfekten Würfel. Gerendert werden Sie kaum einen Unterschied sehen.

Um das ganze mal auf einen Nenner zu bringen: Ist die Option deaktiviert, ähnelt das beim Backen erzeugte Mesh mehr dem gerenderten (=geformten) Endergebnis als die aktivierte Option, die da weniger (bis keine) Rückschlüsse zulässt.

Quellobjekt-/Zielobjektliste

Was genau geschieht beim Backen eines Sculpting-Objektes?

Die Details von sehr hoch aufgelösten Objekten (Quellobjekt) werden per Textur auf niedrig aufgelöste (Zielobjekt) transferiert.

CINEMA 4D muss nun wissen, welche der vielen Unterteilungsstufen eines Sculpting-Objekts beim Backen herangezogen werden soll. Als Zielobjekt wählen Sie die Unterteilungsstufe, in der das neue Objekt erzeugt werden soll und als Quellobjekt dasjenige, dessen Details als Textur verewigt werden soll. Stellen Sie sich dann die beiden Objekte übereinander gelegt vor. Es wird jetzt für das Ziel-Objekt an jeder Oberflächenposition ermittelt, wie weit die entsprechende Oberfläche des Quellobjekts entfernt ist und ein entsprechendes Displacement errechnet. Ähnlich funktioniert das mit der Normalenberechnung.

Die Unterteilungsstufe des Zielobjekts muss immer kleiner sein als die des Quellobjekts, damit dieses Konzept aufgehen kann.

Tab Einstellungen

Displacement

Methode

Siehe Typ. Der voreingestellte Typ RGB (XYZ Objekt) ergibt in den meisten Fällen die besten Ergebnisse; planen Sie allerdings das Objekt später in der Form zu verändern (z.B. per Deformer), verwenden Sie RGB (XYZ Tangente). Nur in diesem Modus "funktioniert" die Textur auch bei sich verformender Geometrie. Beachten Sie beim Modus RGB (XYZ Tangente), dass Sie das Backen von Normalen-Maps streng genommen in 2 Schritten vornehmen sollten. Angenommen Sie haben an einem Objekt mit Unterteilungsstufe 7 geformt. Wenn Sie optimale Ergebnis erhalten wollen, sollten Sie in einem zweistufigen Prozess backen. Zunächst backen Sie nur die Displacement-Textur mit Zielobjekt Stufe 0 von Quellobjekt (mit einer Stufe die die groben Details darstellt z.B.) Stufe 5 (Tab "Optionen"). In einem zweiten Schritt backen Sie dann die Normalen-Textur mit Zielobjekt Stufe 5 von Quellobjekt Stufe 7. Danach müssen die beiden Texturen in einem Material zusammenfasst werden. Warum dieser Aufwand? Der Sculpting-Backen-Dialog schiesst etwas übers Ziel hinaus. Wenn Sie beide Texturen (wie gesagt nur im RGB (XYZ Tangente)-Modus) gleichzeitig mit denselben Ziel- und Quellobjektstufen backen, tut die Normalen-Textur etwas zu viel des Guten, da sie zusätzlich zum Displacement bereits vorhandene Geometrie vortäuscht, was zu einem schlechteren Shading führt.

Geometrie runden

Links deaktivierte, rechts aktivierte Option Geometrie runden bei 2 mit einem Formel-Deformer versehenen Objekten (die vorher mit Displacement gebacken wurden).

Wenn Sie ein gebackenes (Displacement-Textur) Objekt mittels eines Deformers verformen, kann es zu solchen, oben in der Abbildungs links gezeigten Effekten kommen. In einem solchen Fall aktivieren Sie diese Option. Die Displacement-Textur wird dann geringfügig anders gebacken und später im Displacement-Kanal wird die Option Geometrie runden mit dem dort gezeigten Effekt aktiviert.

Allerdings kann diese Option auch zu besseren Ergebnissen führen, wenn oben genannter Effekt nicht vorkommt. Probieren Sie ihn ruhig einfach mal aus.

Normalen

Methode/Optionen

Siehe Methode und folgende. Auch hier gilt – wie im vorherigen Absatz beschrieben –, soll das Objekt später per Deformer verformt werden, verwenden Sie die Option Tangente, ansonsten Objekt.

UVs fortführen

Wenn Sie einen Pixelrand (Tab "Backen") definiert haben, legt diese Option fest, wie innerhalb davon die Pixel fortgeführt werden sollen. Ist sie aktiviert, werden die Pixel einfach bis zum Rand wiederholt, ansonsten richtig berechnet (s.a. UVs fortführen des Material-Backen-Tags).

Ambient Occlusion

Supersampling

Mit Supersampling definieren Sie ein Antialiasing beim Backen der AO-Textur (die Antialiasing-Einstellungen in den Rendervoreinstellungen haben für das Backen von Texturen keinen Einfluss).

UVs fortführen

Wenn Sie einen Pixelrand (Tab "Backen") definiert haben, legt diese Option fest, wie innerhalb davon die Pixel fortgeführt werden sollen. Ist sie aktiviert, werden die Pixel einfach bis zum Rand wiederholt, ansonsten richtig berechnet (s.a. UVs fortführen des Material-Backen-Tags).

Ray Cast

Wenn Sie Displacement (nur bei den 3 Typen Intensität, Intensität (Zentriert) und Rot/Grün)- bzw. Normalen-Maps backen, wird eine sog. "Ray Cast"-Technik angewendet. Vereinfacht funktioniert das für Displacement so: stellen Sie sich hierbei das Ausgangsmesh vor, dem das Sculpt-Mesh übergestülpt wird. Für jede Position auf dem Ausgangsmesh werden Position und Normalenrichtung ermittelt. Jetzt wird in Richtung der Normalen und entgegengesetzt jeweils ein Strahl losgeschickt und ermittelt, in welcher Entfernung dieser das Sculpt-Mesh schneidet und welche Normale dort anliegt. Die Entfernung der zuerst gefundenen Sculpt-Mesh-Oberfläche wird in die Displacement-Map eingerechnet.

Das funktioniert in den meisten Fällen sehr gut, kann aber in gewissen Bereichen fehlschlagen. Z.B. kann das an Geometrierandkanten passieren, wo der Strahl besonders leicht ins Leere läuft. Ebenso ist es möglich, dass der Strahl auf falsche Geometrie trifft. Die Textur wird dann falsch berechnet, wobei sich dann später beim Displacement-Rendern lange Spitzen ergeben. Die folgenden Einstellungen dienen dazu, diese Fehler möglichst zu minimieren. Wenn also solche langen Spitzen auftauchen, kann es helfen Auto Spitzenfilterschwellwert zu deaktivieren und eine kleinere Eigene Ray Cast Distanz zu verwenden.

Maximale Ray Cast Distanz

Eigene Ray Cast Distanz

Bei aktivierter Option Maximale Ray Cast Distanz wird der Strahl praktisch nicht begrenzt. Ist die Option deaktiviert, wird der Strahl nach der bei Eigene Ray Cast Distanz definierten Länge abgebrochen und dort kein Displacement (Höhe=0) berechnet.

Auto Spitzenfilterschwellwert

Eigener Spitzenfilterschwellwert

Der Spitzenfilter untersucht die gebackene Textur und stellt auf statistische Weise fest, welcher Displacement-Bereich am häufigsten vorkommt und identifiziert so krasse Ausreißer (= Spitzen). Diese Ausreißer werden entfernt. Wenn Sie regulierend in die Berechnung der Ausreißer eingreifen wollen, so deaktivieren Sie die Option: je kleiner der Wert bei Eigener Spitzenfilterschwellwert, desto mehr des abweichenden Displacements wird als ungültig deklariert und entfernt.

Bei sehr kleinen Werten bleibt dann allerdings auch nichts mehr vom Displacement übrig.