Shader und Texturen: Die Oberflächen-Shader
Die Shader dieser Rubrik erzeugen vorrangig Muster. Einige der Funktionen werden Ihnen sicherlich bereits bekannt vorkommen. Andere, wie z. B. der Tiles-Shader, erzeugen jedoch auch recht einzigartige Effekte. Generell lassen sich Shader in allen Materialkanälen mit Texturbereich verwenden. Der Großteil dieser Shader wird jedoch im Farbe- oder Relief-Kanal eingesetzt.
Der Einfache Turbulenz-Shader
Der Shader erzeugt ein wolkenartiges Muster, das über U-Frequenz und V-Frequenz in X- und Y-Richtung skaliert werden kann. Die Oktaven sind ein Maß für die Detailtiefe des Musters. Der Farbe-Gradient kann beliebig gestaltet werden. Dies ist wohl auch einer der Hauptunterschiede zum Noise-Shader, der ansonsten ähnliche Muster erzeugen kann.
Der Einfacher Noise-Shader
Dieser Shader funktioniert wie Einfache Turbulenz, erzeugt jedoch ein Noise-Muster. Auch hier besteht der Hauptunterschied zum Noise-Shader wieder in der Möglichkeit zum individuellen Einfärben über den Farbe-Verlauf.
Der Erde-Shader
Sie benötigen eine abstrakte Landkarte? Kein Problem, denn dieser Shader erzeugt automatisch Meere, Landmassen und Gebirge und färbt diese individuell ein. Der prozentuale Anteil der Landmassen an der Gesamtfläche kann ebenso eingetragen werden, wie ein Frequenz-Wert, der die Variation der Landmassengröße vorgibt.
Der Feuer-Shader
Über einen Farbe-Gradienten können beliebig gefärbte Flammen erstellt werden. Rechts sind dort die Färbungen der Flammen, links die Farbe des Hintergrunds zu finden. U-Frequenz und V-Frequenz bestimmen die Anzahl und Länge der Flammen. Die Turbulenz verschlankt mit ansteigenden Werten die Flammen immer stärker und führt zu mehr Unterbrechungen in der Höhe der Flammenzungen. Da dieser Shader automatisch animiert berechnet wird, stellen Sie mit T-Frequenz die Geschwindigkeit für diese Flammenvariation ein.
Für uns unsichtbar erzeugt der Shader auch eine zu den Flammen passende Maskierung. Wenn Sie den gleichen Shader also sowohl im Leuchten- oder Transparenz-, als auch im Alpha-Kanal eines Materials verwenden, erhalten Sie automatisch ausgestanzte Flammen.
Der Flamme-Shader
Ähnlich wie beim Feuer-Shader werden auch hier beliebige Farbwerte wie bei einer Flamme angeordnet. Auch dieser Shader ist automatisch animiert und erzeugt selbständig eine Alphamaske. Diesmal wird jedoch nur eine einzelne Flamme dargestellt. Die Turbulenz führt zu mehr Variationen in der Flamme, wogegen die T-Frequenz die Veränderung während der Animation betrifft. Größere Frequenzwerte resultieren immer in einer stärkeren Variation.
Der Galaxie-Shader
Diese Milchstraße im Taschenformat kann beliebig viele Spiral-Arme besitzen und über den Winkel auch beliebig stark verdreht werden. Ein Farbe-Gradient ermöglicht die individuelle Färbung.
Der Holz-Shader
Wenn Sie nur die Darstellung einer Holzmaserung ohne die umfassenden Parameter des Banzi-Materials benötigen, finden Sie hier den richtigen Shader. Der Holz-Shader funktioniert dabei sogar dreidimensional und durchdringt dadurch das zugewiesene Objekt realistisch. Über das Typ-Menü können einige vorgefertigte Farbverläufe abgerufen werden. Sie können aber auch manuell beliebige Farben verwenden. Der Frequenz-Vektor legt getrennt für alle drei Raumachsen das Ausmaß der Detaildichte fest. Turbulenz sorgt zudem für eine Verwirbelung der Jahresringe.
Der Karo-Shader
Dieser Shader erzeugt rechteckige Farbflächen. U-Frequenz und V-Frequenz regulieren die Dichte der Flächen in X- und Y-Richtung. Die Parameter Farbe 1 und Farbe 2 können zum individuellen Einfärben der Flächen genutzt werden.
Der Marmor-Shader
Ähnlich den Einfache Turbulenz- und Einfacher Noise-Shadern wird hier ein Muster berechnet. Hier soll es an die Marmorierung von Stein erinnern. Ein Frequenz-Vektor legt die dreidimensionale Dichte an Unregelmäßigkeiten fest. Die Turbulenz hilft bei der zufälligen Verwirbelung der Struktur. Der Farbe-Verlauf erlaubt individuelle Farbgebung.
Der Metall-Shader
Anders als zu vermuten, wird hiermit keine metallische Oberfläche erzeugt. Vielmehr handelt es sich um ein diffuses Muster, das z. B. zur Variation einer Oberflächenfarbe verwendet werden kann. Die Frequenz legt die Fülle an Unregelmäßigkeiten fest. Der Farbe-Verlauf ermöglicht wieder beliebige Farbkombinationen.
Der Planet-Shader
Warum nicht gleich einen ganzen Planeten mit einem Shader darstellen? Zumindest die typischen Färbungen von Saturn, Uranus und Neptun können über das Typ-Menü abgerufen werden. Wird das Material dann einer Kugel zugewiesen, entstehen automatisch die passenden Farbverläufe auf deren Oberfläche. Sogar die Saturnringe lassen sich auswählen. Dann ist jedoch die zusätzliche Nutzung des Shaders auch im Alpha-Kanal notwendig. Die Materialzuweisung sollte dann per Fläche-Projektion auf einer Ebene oder Scheibe erfolgen.
Der Rost-Shader
Wer abgeblätterte Farbe oder Rost darstellen möchte, kann sich mit diesem Shader behelfen. Ein Farbe-Verlauf definiert am linken und rechten Rand die Grundfärbung und die Farbe der Rost- oder Farbflecken. Der Anteil der im Verlauf rechten Farbe an der Berechnung des Shaders kann über den Rost-Wert eingegeben werden. Die Frequenz sorgt wie üblich für die gewünschte Dichte an Unregelmäßigkeiten.
Der Sonnenkorona-Shader
Mit diesem Shader kann eine Art Feuerkranz oder –ring erstellt werden. Der Farbe-Verlauf definiert am linken Rand die Hintergrundfarbe. Die weiter rechts folgenden Färbungen legen die Farben der Flamen fest. Die R-Frequenz gibt die Variation innerhalb der flammenartigen Streifen wieder. Größere Werte können dann auch zu Lücken in den Flammen führen. Die A-Frequenz sorgt für die Formung der radialen Streifen. Kleine Werte erzeugen nur eine weiche Wolke, größere Einstellungen führen zum unregelmäßigen Strahlenkranz. Da dieser Shader auch wieder animiert ist, legt die T-Frequenz die Geschwindigkeit der zeitlichen Veränderung fest. Die Turbulenz ist schließlich das Maß für die Verwirbelung der Strahlen. Dies wirkt sich oft so aus, dass höhere Werte die Strahlen verschlanken.
Der Radius gibt die Größe der Öffnung in der Mitte vor, die Höhe hingegen legt die Länge der Strahlen fest. Dieser Shader erzeugt ebenfalls wieder automatisch eine Alpha-Maskierung und kann daher auch im Alpha-Kanal eingesetzt werden, damit nur die Korona sichtbar bleibt. Mit etwas Fantasie können Sie mit diesem Shader sicher auch noch andere nützliche Muster nachbilden. Wie wäre es z. B. mit der Iris eines Auges?
Der Steinpflaster-Shader
Dieser Shader wirkt wie ein unregelmäßiges Kopfsteinpflaster oder auch wie ein ausgetrocknetes Flussbett. Über die Größe stellen Sie die Dichte und somit die Größe der Steine ein. Eine separate Rubrik steuert die Breite der Spalten und Fugen zwischen den Steinen. Verwerfungen führen zu Abweichungen von den ansonsten gradlinigen Steinbegrenzungen.
Verschiedene Farbverläufe legen die Grundfarben der Steine, der Fugen und der Steinränder fest (siehe Abbildung 6.19).
Abbildung 6.19: Einstellungen des Steinpflaster-Shaders
Zusätzlich können zufällige Variationen grobe und feine Oberflächenstrukturen herausarbeiten. Hierfür sind die Struktur- und Körnung-Parameter zuständig. Grobe Struktur ergänzt größere, helle Flecken, während Feine Struktur ein feines, helles Rauschen hinzufügt. Ähnlich funktioniert die Fugenkörnung, die das feine Rauschmuster jedoch auf die Fugen beschränkt. Je höher die Prozentwerte, desto stärker die Sichtbarkeit der zusätzlichen Effekte. Mit der Option Fugenkontrast wird die verwendete Rauschstruktur in den Fugen so verändert, dass diese gleichmäßig die gesamte Fugenbreite ausfüllt und nicht nur in der Mitte der Fugen zu sehen ist.
Die Fugen können zusätzlich mittels Schmutzfarbe abgedunkelt oder verschmutzt berechnet werden. Die Schmutzkantengröße legt dabei die Ausbreitung des Effekts fest, der so auch über die Fugen hinaus auf den Rändern der Steinplatten sichtbar werden kann. Der Schmutzkanten-Parameter definiert die Deckkraft der Verschmutzung.
Der Stern-Shader
Nun haben wir sicherlich bald alle Himmelsobjekte beisammen, obwohl der Stern-Shader eher illustrativ zu Werke geht. Farbe 1 definiert den Hintergrund, Farbe 2 die Füllfarbe für die mehrzackigen Sterne. Die Anzahl dieser Zacken kann manuell vorgegeben werden. Ebenso lässt sich die Größe der Sterne durch Innenradius und Außenradius einstellen. Die durchschnittliche Anzahl an Sternen pro Materialkachel wird bei Sterne eingetragen.
Der Sternenfeld-Shader
Geht es nur um die diffuse Verteilung von Pixeln verschiedener Helligkeit, hilft dieser Shader weiter. Der Shader stellt ansonsten keine weiteren Einstellungen zur Verfügung. Nur die Basis-Eigenschaften jedes Shaders sind natürlich auch hier zu finden, um z. B. über den Blur-Offset eine Weichzeichnung des Musters zu erstellen.
Der Tiles-Shader
Dieser Shader kann zahlreiche geordnete Muster erzeugen. Dazu gehören Planken, Kacheln oder auch Streifen und Kreise. Die Färbungen der Kacheln und der Fugen dazwischen können individuell gewählt werden. Verschiedene Größe-Parameter erlauben sowohl gleichmäßige als auch ungleichmäßige Skalierung.
Der Venus-Shader
Auch hier entsteht wieder ein Muster, das diesmal an die Oberfläche des Planeten Venus erinnern soll. Die Einstellungen entsprechen bereits bekannten Shadern. Die Frequenz sorgt auch hier wieder für die Detaildichte entlang der drei Raumrichtungen. Die Rotation verdreht das Muster. Schließlich liegt die Farbgebung über den Farbe-Verlauf wieder ganz in Ihrer Hand.
Der Wasser-Shader
Hier geht es weniger um die transparenten oder spiegelnden Eigenschaften des Wassers, sondern um die typischen Wellen, die z. B. auf dem Meer zu beobachten sind. In entsprechender Skalierung kann der Shader aber natürlich auch für kleinere Gewässer eingesetzt werden. Dieser Shader kommt in der Regel im Relief-Kanal zum Einsatz.
Die U-Frequenz bestimmt die Abstände zwischen den Wellen in X-Richtung. Höhere Werte führen daher auch zu mehr Wellen. Die V-Frequenz variiert die Wellenkämme und sorgt für mehr Unterbrechungen in Y-Richtung des Musters. T-Frequenz ist das Maß für die zeitliche Veränderung der Wellen, denn auch dieser Shader ist wieder automatisch animiert. Der Wind schließlich definiert die Vorwärtsbewegung der Wellen.
Der Wolken-Shader
Wieder handelt es sich um einen Muster-Shader, der diesmal wolkenartige Flächen erstellt. Die Frequenzen legen die Detaildichte in beiden Richtungen fest. Der Wolken-Parameter steuert den Anteil der Wolken am Ergebnis. Die Farben von Himmel und Wolken werden über den Farbe-Verlauf bestimmt. Die Option Kompatibel halten ist nur dann interessant, wenn Sie eine Szene aus einer älteren CINEMA 4D-Version öffnen und in dieser der Wolken-Shader bereits verwendet wird. Die Shaderberechnung läuft dann wie in älteren Versionen ab.
Der Ziegel-Shader
Zur Darstellung einer Ziegelmauer finden Sie hier alle notwendigen Einstellungen. Dazu gehören individuelle Farbeinstellungen für die Ziegelfarben, für die Fugen und auch für eine alternative Schmutzschicht auf der Wand. Im oberen Teil des Dialogs stellen Sie die Größe der Ziegel und den Versatz der Ziegelreihen ein. Auch Steine mit halber Breite können verbaut werden (siehe Abbildung 6.20).
Abbildung 6.20: Einstellungen des Ziegel-Shaders
Sollen alle Ziegel jedoch gleich groß sein, setzen Sie jede x-te Reihe halbe Breite auf 0. Andernfalls können die halbierten Ziegel auch mittels Versatz seitlich eingerückt werden. Die Farbbalance halbiert die Anzahl der Ziegel mit halber Breite, sofern diese mit der alternativen Ziegelfarbe belegt werden. Abbildung 6.21 macht den Effekt an einem Beispiel deutlicher. Aber auch ohne die Nutzung halbierter Ziegel müssen die Steine natürlich nicht in einem langweiligen Raster aufeinander stehen, sondern lassen sich ebenfalls über einen separaten Versatz reihenweise gegeneinander verschieben. Durch Jede x-te Reihe zurücksetzen kann jede x-te Ziegelreihe wieder bündig an der linken Seite beginnen. Die generellen Abmessungen der Ziegel geben Sie prozentual mit Ziegelbreite und Ziegelhöhe vor. Die Größe ist nur ein einfacher Multiplikator für dieses Seitenverhältnis der Steine.
Im Farben-Teil des Dialogs geht es um die Färbung der Ziegel (siehe auch Abbildung 6.21).
Abbildung 6.21: Effekt der Farbbalance-Option auf die Färbung halbierter Steinreihen
Es können zwei voneinander unabhängige Farbverlaufe für Ziegelfarbe und Alternative Ziegelfarbe konfiguriert werden. Wenn Sie verschiedene Farben in den Verläufen mischen, entstehen automatisch Farbvariationen auf den Ziegeln.
Die alternative Ziegelfarbe kann über Alt. Farbe jede x-te Reihe und Alt. Farbe jede x-te Spalte individuell auf die Wandziegel übertragen werden. Beide Farbvorgaben lassen sich aber auch über Texturen angeben. Die Farbverläufe werden dadurch erst einmal deaktiviert. Durch das Laden einer Textur erscheinen zusätzliche Einstellungen im Bereich Texturdetails unterhalb des jeweiligen Textur-Felds. Bei Bedarf kann dort über den Offset eine zufällige prozentuale Verschiebung der Textur aktiviert werden. Ist gleichzeitig Zufall selektiert, verstärkt sich die Durchmischung der Texturkacheln durch eine zusätzliche Neuordnung der UV-Koordinaten der Ziegel (siehe Abbildung 6.22).
Abbildung 6.22: Variationen der Ziegel-Textur
Über die Größe skalieren Sie die geladene Textur. Bei 100% bildet sich die Textur exakt ein Mal auf der Texturkachel des Ziegel-Shaders ab. Bei kleineren Werten wird die Textur automatisch nahtlos gekachelt, sofern es sich um ein geladenes Bild handelt. Bei einem Shader vergrößert oder verkleinert sich die Struktur einfach immer weiter. Die Umdrehen-Option führt zu einer 90° Drehung der Textur im Uhrzeigersinn und einer anschließenden Spiegelung entlang der Horizontalen. Durch eine Reduktion der Deckkraft können die Farbverläufe durch die geladenen Texturen hindurchschimmern. Alternativ können auch andere Mischmodi über das Blendemodus-Menü ausgewählt werden.
Mit der Ziegel Noisegröße beeinflussen Sie die Anwendung der Farbverläufe auf allen Ziegeln. Bei kleineren Werten resultieren härtere Kontraste und raschere Farbwechsel auf kleinem Raum. Zusätzlich kommt noch ein Rauschmuster zur Anwendung, das der Oberfläche eine gewisse Rauigkeit geben soll. Die Intensität dieses Rauschens stellen Sie über den Details-Wert ein. Die Skalierung des Rauschmusters nehmen Sie über Detailgröße vor. Dieses Rauschen kann hilfreich sein, wenn Sie den Shader auch im Relief– oder gar Displacement-Kanal nutzen möchten, um den Fugen eine echte Tiefe zu geben und die Ziegel leicht porös wirken zu lassen.
Die Fugen
Ähnlich den Ziegeln, so lassen sich auch für die Fugen über einen Fugenfarbe-Verlauf verschiedene Helligkeiten oder gar Farben vorgeben, die zufällig verteilt werden. Der Wert für Fugen Noisegröße ist für diese Zufälligkeit verantwortlich. Kleine Prozentwerte führen zu mehr Variation. Alternativ oder ergänzend zum Farbverlauf steht auch wieder eine Textur zur Verfügung. Die Tiefe legt den Übergang zwischen Fuge und Ziegel fest. Größere Tiefe-Einstellungen zeichnen den Übergang zwischen Ziegel und Fuge weich. Dies kann z. B. wieder für die Nutzung im Relief-Kanal hilfreich sein, um die Tiefenwirkung der Mauer zu verstärken.
Die Größe gibt die Breite der Fugen an (siehe Abbildung 6.23).
Abbildung 6.23: Verschiedene Fugen-Einstellungen
Durch Größenvariation kann der Umriss der Mauersteine unregelmäßig gestaltet werden. Größenvariation Skalierung kontrolliert dabei die Form der Unregelmäßigkeiten. Eine große Skalierung führt zu groben Kanten und Ausbrüchen, wogegen kleine Werte viele Störungen auf kleinem Raum produzieren.
Die Schmutzschicht
Die Schmutz-Rubrik kann nach dem Aktivieren eine zusätzliche Farbebene über der Ziegeln und Fugen errechnen, um z. B. Verschmutzungen darzustellen (siehe Abbildung 6.24).
Abbildung 6.24: Überlagern einer Schmutzschicht
Ein Farbe-Verlauf gibt die verschiedenen Schmutzfarben vor. Wenn Sie das kleine Dreieck vor dem Verlauf anklicken, erhalten Sie zusätzlich Zugriff auf eine Alpha bearbeiten-Option. Sie kennen das Prinzip bereits vom dem PyroCluster-Material. Der Farbe-Verlauf stellt dann editierbare Alphawerte dar, über die Sie die Deckkraft der Schmutzebene definieren können. Die Werte für Mischen Fugen und Mischen Ziegel legen die Intensität und Art der Schmutz-Beimischung relativ zur Ziegelfarbe darunter fest. Werte über 0% verwenden Negativ multiplizieren als Mischmodus, Werte unter 0% verwenden Nachbelichten. Bei der Einstellung 0% kommt es ansonsten zu einer reinen Überlagerung der Farben. Der Deckkraft-Regler ist ein allgemeiner Multiplikator für die Sichtbarkeit der Schmutzschicht.
Die Struktur des Schmutzmusters steuern Sie über Deckkraftgröße und Farbgröße. Kleinere Werte für die Deckkraftgröße führen zu mehr Details in der Schmutzstruktur. Die Farbgröße hingegen bezieht sich nur auf den Farbe-Verlauf und steuert die Größe des intern verwendeten Musters, das für die Wahl der Farbe aus dem Verlauf zuständig ist. Auch hier führen kleine Werte zu mehr Variation im Ergebnis. Die Oktaven legen die Detailtiefe der Schmutzstruktur fest, ganz so, wie Sie es z. B. auch aus dem Noise-Shader bereits kennen. Eine zusätzliche Verschiebung der Schmutzstruktur kann über den Versatz-Vektor eingetragen werden. Der X- und der Y-Anteil verschieben das Muster horizontal und vertikal. Eine Veränderung des Z-Anteils macht neue Strukturen im Schmutz sichtbar.
Auch hier können Sie wieder alternativ oder ergänzend mit geladenen Texturen arbeiten. Textur steht dabei für die Alpha-Maske des Schmutzes. Es kommt hier also nur auf die Helligkeiten des Shaders oder der Bitmap an. Über die Texturdetails kann eine räumliche Verschiebung, eine Skalierung oder eine Drehung der Texturen ausgelöst werden. Das Prinzip ist also mit dem der Farben-Rubrik des Shaders identisch. Die Nutzung des Z-Anteils bei der Verschiebung ist jedoch nur für dreidimensionale Shader, wie z. B. den Noise-Shader gedacht. Die Option Mit Verlauf multiplizieren bezieht sich auf den Farbe-Verlauf aus dem oberen Teil der Dialogseite. Sowohl Textur, als auch eventuell zusätzlich geladene Farbtextur, werden dann mit dem Farbe-Verlauf multipliziert. Ansonsten kann die Färbung der Schmutzschicht auch direkt über eine Farbtextur geladen werden. Denken Sie z. B. an Graffiti auf der Wand.
Was die Auswertung der geladenen Textur als Alpha-Maskierung für den Schmutz betrifft, so lässt sich diese mit Alpha invertieren umkehren und über Alpha Kontrast beliebig schärfen oder weichzeichnen. Der Alpha Bias kann zum Vergrößern und Verkleinern der verschmutzten Bereiche benutzt werden.
Der Variationsmöglichkeiten noch nicht genug, steht uns auch noch Regen zur Verfügung, um die Schmutzschicht noch verwaschener wirken zu lassen. Bei Werten über 0% wird der Schmutz entlang der Textur-V-Richtung, also in unserer Texturkachel senkrecht nach unten verschmiert und dabei zusätzlich abgeschwächt. Die Samples geben die Rechengenauigkeit des Effekts vor, wobei mehr Samples ein weicheres Ergebnis liefern. Möchten Sie trotz Regen-Effekts mehr Kontrast im Schmutz behalten, versuchen Sie es also zuerst mit kleineren Samples-Werten. Nutzen Sie eine Farbtextur für den Schmutz, so kann diese über die Farbtextur weichzeichnen-Option ebenfalls durch den Regen beeinflusst werden.
Der Zyklon-Shader
Dieser Shader erinnert stark an den Galaxie-Shader, füllt jedoch die gesamte Fläche mit einem Wirbel. Rotation gibt die Anzahl vollständiger Umdrehungen an. Die T-Frequenz ist das Maß für die Drehgeschwindigkeit des Strudels während der Animation, denn auch dieser Shader ist wieder automatisch animiert. Wolken gibt den Anteil der Flächen vor, die mit dem linken Rand des Farbe-Gradienten gefärbt werden.
Über den Autor
Dieses Tutorial ist ein Auszug aus dem CINEMA 4D-Kompendium von Arndt von Koenigsmarck. Das komplette CINEMA 4D-Kompendium mit über 850 Seiten Know-how als Download (PDF und ePub) gibt es hier: CINEMA 4D-Kompendium.
