Blender Dokumentation/ Druckversion/ Material3
Ramp Shader
Bearbeiten
bezieht sich auf Blender v2.37a
Sehr viele Materialien - wie Haut oder Metall - zeigen Farbvariationen in Abhängigkeit der Lichtmenge die die Oberfläche trifft, oder der Richtung des Lichteinfalls. Diese Effekte lassen sich mit Hilfe von Ramp Shadern erreichen. Das Besondere an den Ramp Shadern und der Schlüssel zu ihrem Verständnis sind die Input Methoden!
Mit Hilfe der Ramp Optionen in Blender kann ein Farbverlauf (inklusive Transparenz) für das Material definiert werden. Dann wird ausgewählt, von welchem Parameter der Verlauf abhängen soll, und wie er mit der Materialfarbe und den Texturen gemischt werden soll.
Da die Texturen vor dem Shading aufgebracht werden, können die Farbverläufe die Texturen vollständig ersetzen, oder mit ihnen verrechnet werden. Das geschieht zum einen über Alpha-Werte der Textur selbst, über die Blending Modes und über den Blendfaktor. Ramp Shader sind also eine zusätzliche Möglichkeit, das Material des Objektes zu beeinflussen. Alle anderen Materialoptionen bleiben erhalten!
Ramp Shader sind ein wirklich tolles Feature, mit dem Sie Materialien sehr viel realistischer gestalten, oder besondere Effekte erzielen können (z.B. Cartoon). Darüber hinaus beeinflusst es die Renderzeit nur sehr wenig.
Anschalten
BearbeitenWechseln Sie mit F5 in die Material buttons und öffnen das Ramps Panel. Das sieht noch sehr leer aus. Klicken Sie auf den Button Colorband. Dadurch werden die Ramp Shader eingeschaltet, und eine Reihe von weiteren Optionen und Buttons wird sichtbar (Abbildung 1).
Die Auswirkungen der Ramp Shader können Sie sehr gut im Preview Fenster und ebenfalls im 3D-Fenster
beurteilen. Wechseln Sie dazu am besten in die Kameraansicht (Num-0) und schalten mit Shift-Z in die Shaded Ansicht.
Farbverlaufseditor [Colorband]
BearbeitenDas Colorband ist Blenders Farbverlaufs-Editor (Abbildung 1, der gelb umrandete Teil). Jeder festgelegte Wert - genauer Wertetupel, aber wir bleiben hier bei der Bezeichnung Wert - im Farbverlauf wird durch einen senkrechten Strich symbolisiert. Der aktive Strich wird dicker dargestellt.
Jeder Strich auf dem Farbband kann an jeden Ort verschoben werden (es können damit auch die Positionen gewechselt werden), jeder Alpha- und Farbwert kann ihm zugewiesen werden. Blender interpoliert die Werte von einem Strich zum nächsten. Der Interpolationstyp wird durch die Buttons E (quadratisch), L (linear) und S (B-Spline) ausgewählt. Die Interpolation ist nicht im Colorband sichtbar, wohl aber in der Vorschau und im 3D-Fenster.
Die Striche (Werte) werden mit dem Cur: Button oder mit LMT ausgewählt. Add und Del fügen Werte hinzu bzw. löschen diese, dabei beginnt die Zählung ganz links bei 0. Es sind max. 15 Werte (0-14) möglich. Den Wert mit der Nummer "0" können Sie nicht löschen, aber natürlich verschieben. Neue Werte werden immer in der Mitte (bei 0.5) hinzugefügt.
Im Feld Pos wird die Position des aktuellen Wertes auf dem Band angezeigt, darunter dessen Farbe und Alphawert. Der Alphawert bestimmt nicht den Alphawert des Materials, macht also nicht einen Gegenstand durchsichtiger, sondern bestimmt die Stärke des Ramp Shader Effektes.
Die senkrechten Striche können mit "Drag and Drop" auf dem Band, oder durch Eingabe des numerischen Wertes in das Pos Feld positioniert werden.
Input
BearbeitenFür den Input stehen vier Möglichkeiten zur Verfügung:
- Shader: Die Richtung des Lichteinfalles bestimmt die Farbe. Dabei ist die Position ganz rechts im Colorband senkrecht (90°) auftreffendes Licht, die Position in der Mitte waagerecht (streifend) einfallendes Licht, die Position ganz links wäre dann -90°. Um diese Farbe sehen zu können, müssen Sie mehrere Lampen in der Szene haben. Die Helligkeit wird natürlich weiterhin von der Menge des Lichtes und dem Ref- bzw. Spec Wert des Materials festgelegt.
- Energy: Sowohl die Richtung als auch die Lichtenergie wird berücksichtigt. Je dunkler die Lampe ist, desto mehr wird der linke Teil des Farbverlaufs berücksichtigt, je heller, desto stärker der rechte Teil. Die Lichtmenge ändert also die Farbe des Materials.
- Normal: Die Flächennormale (relativ zur Kamera) wird benutzt. Ganz rechts im Verlauf entspricht der Richtung senkrecht zur Kamera, ganz links im Verlauf von der Kamera weg. Damit werden Sie durch die Kamera die Farbe ganz links im Verlauf niemals sehen können. Dieser Effekt ist auch mit Texturen möglich (Abschnitt Map Input), wurde aber der Vollständigkeit halber hier hinzugefügt. Es wird vielfach empfohlen, statt diesem Ramp Shader die entsprechende Textur zu benutzen, nichtsdestotrotz findet man viele komplexere Materialien mit genau dieser Einstellung.
- Result: Die Gesamthelligkeit aller Lampen (die anderen Optionen arbeiten pro Lampe). Je dunkler die Lampenhelligkeit, desto stärker wird der linke Wert im Farbverlauf berücksichtigt, je heller, desto mehr der rechte Wert. Die Helligkeit hängt nicht mehr von den Lampen, sondern nur von den Farbeinstellungen ab. Damit kann man "Cartoon" Shader, oder farbige Schatten erzeugen.
Yafray in Version 0.0.8 ignoriert die Option Result, die anderen drei Optionen funktionieren, wenn auch nicht ganz so, wie in Blender.
Method / Factor
BearbeitenDie Method bestimmt, wie der Ramp Shader mit den Materialien und Texturen verrechnet wird. Das entspricht den Ebenenmodi aus Bildbearbeitungsprogrammen. Mix bedeutet Ersetzung. Eine genauere Erklärung der Modi finden Sie im Abschnitt Blending Modes.
Der Factor gibt an, wie stark der Effekt der Ramp Shader im Verhältnis zu dem Material und den Texturen sein soll. Ein Factor von 1 im Mix Modus zeigt nur den Ramp Shader.
Diffuse
BearbeitenRamp Shader können den Diffuse (Ref) und/oder den Specular Shader (Spec) beeinflussen. Wir werden hier nur verschiedene Einstellungen für Diffuse vorstellen.
Links
BearbeitenRelease Notes zu v2.34 (Ramp Shaders)
Videotutorial zu Ramp Shaders und Colorband (engl.)
englische Seite im Blender.org-Wiki
Raytracing-Spiegelungen
Bearbeiten
Diese Seite bezieht sich auf Blender vpre2.48 |
Raytracing-Spiegelungen sind eine Methode, um in Blender realistisch spiegelndes Material zu erstellen. Wie jede Raytracing-Methode erfordern sie das Aktivieren der Option Ray in den Render-Buttons (F10). Und genauso wie bei den anderen Raytracing-Berechnungen kann die Renderzeit unter Umständen sehr lang werden. Zu Beginn jedoch einige Begriffserklärungen.
Fresnel
BearbeitenWenn man auf eine Wasseroberfläche schaut, bemerkt man, dass mit zunehmendem Blickwinkel - also je schräger man schaut - das Wasser undurchsichtig wird. Stattdessen reflektiert das Wasser nur noch. Blickt man von oben senkrecht in das Wasser hinein, so reflektiert es nur sehr wenig, ist dafür aber sehr durchsichtig. Das nennt man den Fresnel-Effekt (gesprochen "Fre-nel"). Der Fresnel-Effekt ist für Metalle sehr klein und kann praktisch vernachlässigt werden (sofern die Metalle ganz sauber sind). Glas und Wasser dagegen zeigen einen sehr starken Fresnel-Effekt.
Der Fresnel-Wert ist daher für transparente Materialien von besonderer Bedeutung, er spielt aber auch eine Rolle für nur teilweise transparentes Material, wie z.B. Plastik. Außerdem wird man viele Materialien (z.B. Autolack) in Blender so behandeln, als bestünden sie nur aus einem einheitlichen Material, gerade Lack aber besteht aus mehreren Schichten mit sehr unterschiedlichen Eigenschaften. Die Physik dahinter exakt zu simulieren ist mit vertretbarer Renderzeit vermutlich nicht möglich. Letztlich wird es also immer auf den zu erzielenden Effekt ankommen, welche Einstellungen von Ray Mirror, Fresnel und Fac man wählt.
Am "physikalischsten" ist die Einstellung beider Fresnel-Werte auf fünf, insbesondere sollten sie gleich groß sein.
Die verschiedenen Einstellungsmöglichkeiten finden Sie in den Material Buttons im Panel Mirror Transp (Abbildung 4).
Spiegel
BearbeitenMetalloberflächen zeigen praktisch keine Abhängigkeit der Reflexion von der Blickrichtung, der Fresnel/Fac-Wert für ideale Spiegel ist demnach 0.0/1.0. Da Spiegel an der Vorderseite aber eine Glasscheibe haben, oder die Metalloberfläche dreckig sein kann, kann man auch kleine Werte (0.1/1.1) wählen, z.B. mit einer Wolkentextur für die Spiegeloberfläche.
Bei Aluminium ist es z.B. so, dass das Reflexionsvermögen für unpolarisiertes Licht erst ab einem Betrachtungswinkel von 70° etwa um 5% abfällt, um dann ab 85° wieder anzusteigen. Bei fast 90° Einfall wird das Licht dann zu fast 100% reflektiert. Man wird diesen Effekt also ignorieren können.
Glas
BearbeitenDer reflektierte Intensitätsanteil beträgt für den Übergang von Luft zu Glas bei senkrechter Betrachtung etwa 4%. Bis zu einem Winkel von 50° bleibt die Reflexion für unpolarisiertes Licht auch etwa so. Nun ändert sich die Winkelabhängigkeit aber dramatisch.
In ungefährer Parabelform steigt die Reflexion auf 100% bei einem Betrachtungswinkel von 90° (siehe unten).
Das Ray Mirror Menü
Bearbeiten1 Ray Mirror: stellt die Raytracing-Spiegelungen an oder ab.
2 RayMir: gerichtete Reflektivität (Spiegelung) des Materials. Hier gilt: Einfallswinkel gleich Ausfallswinkel. RayMir= 1 bedeutet ideal spiegelnd, RayMir= 0 entsprechend überhaupt nicht spiegelnd.
3 Fresnel: Blickwinkelabhängigkeit der Reflexion. Fresnel = 0 bedeutet keine Blickwinkelabhängigkeit. Bei größeren Fresnel Werten ist die Spiegelung bei senkrechter Betrachtung kleiner, bei schräger Betrachtung größer. Eine genauere Besprechung des Fresnel Wertes folgt weiter unten.
4 Fac: Einflussfaktor des Fresnel Wertes. Fac=1 schaltet Fresnel aus. Wenn Fresnel und Fac auf 5 stehen, spiegelt das Material überhaupt nicht (aus keiner Richtung).
9 Depth: Wie oft ein gespiegelter Lichtstrahl wieder gespiegelt wird (erfordert mehrere spiegelnde Oberflächen). Haben sie nur einen geraden Spiegel, funktioniert auch Depth = 0. Ein großer Depth Wert treibt bei mehreren spiegelnden Objekten die Renderzeit sehr in die Höhe, ein Depth Wert von 2 oder 3 genügt in der Regel.
Verschwommene Reflexionen
BearbeitenIn der realen Welt wird der Glanz einer Oberfläche durch mikrofeine Unebenheiten verursacht, die das Licht zerstreuen. Je rauher die Oberfläche ist, desto verschwommener wird der Glanz. In Blender wird dieser Effekt nachgebildet, indem mehrere Samples überblendet werden, die konusförmig um den eigentlichen Raytracing Strahl angeordnet sind. Je mehr Samples verwendet werden, um so besser fällt das Ergebnis aus. Damit die Renderzeiten nicht uferlos ansteigen, ist die Berechnung auf das erste Auftreffen des Raytracing Strahls beschränkt. Deswegen ist es nicht möglich, verschwommene Reflexionen z.B. hinter einem Glas zu berechnen, weil es eben nicht das erste, sondern schon x`te Auftreffen des Strahls bedeuten würde.
5 Gloss: Der Glanz der Oberfläche. Ein Wert von 1 bedeutet vollkommen scharfe Reflexionen wie z.B. bei glattem Glas oder Spiegeln. Werte geringer als 1 erzeugen immer verschwommenere Reflexionen, benötigen aber auch höhere Sample Werte für gleichmäßige Ergebnisse. In Abb.6 wurde der Sample Wert nicht erhöht und Sie sehen schon ab 0.6 die körnige Struktur der Reflexionen.
7 Samples: Um den endgültigen Farbwert für ein Pixel berechnen zu können, muss ein Durchschnittswert aus verschiedenen Samples berechnet werden. Dafür muss der ursprüngliche Raystrahl aber feiner untergliedert werden, was die Renderzeit erhöht. Sollen sehr verwaschene Reflexionen berechnet werden, ist ein hoher Sample Wert unbedingt erforderlich, da sonst ein Bildrauschen auftritt.
8 Thresh: Der Grenzwert für adaptives Sampling. Höhere Werte beschleunigen den Rendervorgang, können aber auch Rauschen im Bild erzeugen.
Anisotropische Reflexionen
Bearbeiten6 Aniso: Anisotropische Reflexionen entstehen durch Mehrfachreflexionen in dünnen Schichten, z.B. bestimmten Lacken oder auch in der Haut von Seifenblasen. Diese Mehrfachreflexionen treten bei ganz bestimmten Einfallswinkeln des Lichtes auf, und dieser Winkel ist abhängig von der Wellenlänge - also der Farbe des Lichtes. Es entstehen nicht einfach diffuse, kreisförmig verwischte Reflexionen, sondern langgezogene Lichtbrechungen von vielen parallelen Reflexionen. In den Shader Einstellungen muss dafür der Tangent V Button aktiviert sein, dann werden die Diffusion und Specular automatisch als anisotropische Reflexionen berechnet. Null bedeutet, die Reflexionen werden wie bisher kreisförmig, bei eins hingegen langgezogen berechnet. Die "Anisotropic raytraced reflections" basieren auf den "tangent Vektoren", wie sie auch beim tangent shading verwendet werden.
Maximale Distanz der verschwommenen Reflexionen
Bearbeiten10 Max Dist: Beschränkt die Reflexionen auf einen bestimmten Abstand, gemessen in Blendereinheiten. Dies erhöht die Rendergeschwindigkeit signifikant. Anstatt Raystrahlen in die ganze Szene zu senden, werden die Reflexionen nur noch in dem durch Max Dist angegebenen Bereich errechnet.
11 Fade to sky color: Wenn Max Dist verwendet wird besteht das Problem, die verwaschenen Reflexionen sanft auslaufen zu lassen. Deswegen gibt es die zwei Optionen "fade out to sky color" oder "fade out to material".
Traceable
BearbeitenWird Traceable deaktiviert, wird das Material nicht in einem Spiegel reflektiert, reflektiert aber selbst (Vampireffekt ;-) ). Allerdings ist es dann auch unsichtbar für die Berechnungen von Ambient Occlusion :-(
Allgemeine Hinweise
Bearbeiten- Die Farbe des reflektierten Lichts wird über die Mir-Einstellungen im Material-Panel eingestellt.
- Wenn nichts zum Spiegeln da ist, können Sie Ray Mirror einstellen wie sie wollen. Sorgen Sie also für eine interessante Umgebung!
Etwas Physik
BearbeitenAuf die Grenzfläche zweier Materialien fallendes Licht erfährt prinzipiell drei Effekte.
- Transmission: Ein Teil des Lichtes scheint durch ein Material hindurch, dabei wird es gebrochen.
- Reflexion: Ein Teil des Lichtes wird reflektiert, dabei gilt das Reflexionsgesetz Einfallswinkel=Ausfallswinkel.
- Absorption: Ein Teil des Lichtes wird verschluckt.
Die Summe aus Transmission, Reflexion und Absorption muss gleich der einfallenden Lichtmenge sein. Die Summe der relativen Anteile muss also 1 ergeben.
Die Verhältnisse werden leider dadurch verkompliziert, dass das Verhältnis von reflektierter und transmittierter Lichtmenge vom Einfallswinkel der Lichtstrahlen abhängt. Diesem Umstand trägt der Fresnel Wert Rechnung. Schaut man senkrecht auf eine Oberfläche, reflektiert sie am wenigsten - transparente Materialien transmittieren am besten. Umgekehrt spiegeln bswp. Glasscheiben oder Wasseroberflächen bei schräger Betrachtung sehr stark, der transmittierte Lichtanteil ist entsprechend geringer.
In Blender wird der Fresnel-Effekt mit der Schlickschen Näherung (Schlicks Approximation) berechnet. Für Glas (IOR=1.5) und Wasser (IOR=1,33) habe ich für verschiedene Fresnel-Werte jeweils den reflektierten und den transmittierten Anteil dargestellt. Wer sich für die Berechnungsformeln interessiert, sei auf Dielectrics and Distribution in Ray Tracing verwiesen. Der Fresnel-Wert fünf für Reflexion und Transmission entspricht dabei der exakten Berechnung am meisten.
Links
BearbeitenBeispieleinstellungen für Yafray (englisch).
Dielectrics and Distribution in Ray Tracing
Raytracing-Transparenz
Bearbeiten
Diese Seite bezieht sich auf Blender vpre2.48 |
Glas
BearbeitenWelche Aspekte müssen berücksichtigt werden, um ein Glasmaterial mit den Einstellungen in Blender realistisch aufzubauen? Es gibt hierbei drei unterschiedliche Lösungsansätze, die jeweils auf ganz unterschiedlichen Techniken beruhen.
- Glasmaterial mittels Z-Transparenz
- Glasmaterial mittels Nodes
- Glasmaterial mittels Raytracing
Glasmaterial erstellen mittels Z-Transparenz
BearbeitenBis vor wenigen Jahren gab es nur diese eine Methode in Blender, um durchsichtige Objekte zu erzeugen. Es handelt sich dabei um die Simulation von Effekten, die am Ende den Eindruck von "Durchsichtigkeit" erzeugen sollten, denn die Berechnung von Spiegelungen und gebrochenen Lichtstrahlen ist der Raytracing-Technik vorbehalten, die aber, wie schon oben erwähnt, erst seit einigen Jahren in Blender zur Verfügung steht. Spiegelungen werden dabei durch Environmentmaps ersetzt und Durchsichtigkeit durch Z-Transparenz und Alphawerte. Nähere Informationen über die Anwendung der Technik finden Sie hier.
Glaseffekt erstellen mittels Composite Nodes
BearbeitenDieser Ansatz schlägt einen radikal anderen Weg ein und simuliert den Glaseffekt als "Eigenschaft der Objektoberfläche". Die scheinbare Lichtbrechung wird dadurch simuliert, dass die Texturen so verändert werden, dass sie den in der Realität sichtbaren Brechungen täuschend ähnlich sind. Nähere Informationen darüber finden Sie hier.
Glasmaterial erstellen mittels Raytracing
BearbeitenIm Folgenden möchten wir uns ganz auf den dritten Aspekt beschränken, das Erstellen von Glasmaterialien durch den Einsatz von Raytracing. Dabei werden die einzelnen Aspekte systematisch erarbeitet, die dann in ihrer Summe ein realistisches Glasmaterial ergeben.
1 Ray Transp: Stellt die Raytracing-Transparenz an oder ab.
2 IOR: Index of Refraction = Brechungsindex. Typische Brechungsindizes für verschiedene Materialien finden Sie z.B. bei Wikipedia (der Link ist unten aufgelistet), Wasser hat einen Brechungsindex von 1.3, Fensterglas einen von 1.5. Brechungseffekte funktionieren nur mit Raytracing.
3 Fresnel: Winkelabhängigkeit der Transparenz. Ein Fresnel-Wert von 0 bedeutet keine Winkelabhängigkeit, und Sie müssen die Transparenz mit dem Alphawert des Materials einstellen. Höhere Fresnel-Werte bedeuten zunehmende Blickwinkelabhängigkeit. Bei senkrechtem Blick auf die Oberfläche ist das Material transparent, bei schrägem Blick undurchsichtig (Siehe Raytracing-Spiegelungen). Die resultierende Transparenz über Fresnel und Alpha ist gleichwertig.
Bitte beachten Sie, dass die Fresnel Einstellungen auch dann wirksam sind, wenn der Button Ray Transp deaktiviert ist. Damit kann Fresnel auch in Verbindung mit ZTansp verwendet werden. (Hoffentlich wird diese Unlogik in der Benutzerführung schnellstens geändert).
4 Fac: Stärke des Fresnel-Effektes.
5 Gloss: Wie unscharf die Brechungen sind. Ein Wert von 1 bedeutet vollkommen scharfe Darstellung der Brechungen. Werte geringer als 1 erzeugen immer verschwommenere Ergebnisse, benötigen aber auch höhere Samplewerte.
6 Samples: Um den endgültigen Farbwert für ein Pixel berechnen zu können, muss ein Durchschnittswert aus verschiedenen Samples berechnet werden. Dafür muss der ursprüngliche Raystrahl aber feiner untergliedert werden, was die Renderzeit erhöht. Sollen sehr verwaschene Brechungen berechnet werden, ist ein hoher Sample Wert unbedingt erforderlich, da sonst ein Bildrauschen auftritt.
7 Thresh: Der Grenzwert für adaptives Sampling. Höhere Werte beschleunigen den Rendervorgang, können aber auch Rauschen im Bild erzeugen.
8 Depth: Die Anzahl an Oberflächen (+1), die ein Lichtstrahl durchdringen kann. Depth 0 bedeutet 1 Oberfläche, Depth 1 zwei Oberflächen (ein Körper) usw. Für ein Glas benötigt man Depth 3, da Vorder- und Rückseite zu durchdringen sind. Zwei hintereinander gestellte Gläser brauchen Depth 7.
9 Filter: Transparentes Glas ist vollständig durchsichtig, was auch bedeutet, dass es kein Licht absorbiert. Das ist natürlich unrealistisch. Insbesondere farbiges Glas sollte Licht anderer Farben absorbieren. Das lässt sich mit der Filter Einstellung erreichen, auch wenn der Alphawert des Materials 0 ist!
10 Limit: Ein Wert über 0 aktiviert Transmissivity. Das Licht wird beim Durchgang durch das Objekt abgeschwächt. Der Limit Wert begrenzt die Abschwächung, jeder Lichtstrahl der länger ist als Limit Blendereinheiten, wird nicht weiter abgeschwächt. Empfohlene Einstellung: 100.
11 Falloff: Exponent der Berechnung der Lichtabschwächung für Transmissivity. 1 bedeutet linearer Falloff, 2 quadratischer Falloff, 0.5 entsprechend eine Abhängigkeit von der Quadratwurzel aus dem Lichtweg. Diese Einstellung gibt dem Glas optisch Tiefe und Dicke.
12 SpecTra: Hier wird die Durchsichtigkeit der Spec-Reflexionen eingestellt.
Durchsichtigkeit
BearbeitenDie erste und wichtigste Eigenschaft von Glas ist zweifelsohne seine Durchsichtigkeit. Dabei sind allerdings zwei Effekte zu unterscheiden. Zum einen muss man durch die Oberfläche in das Glas hinein blicken, zum anderen durch das Glas hindurch gucken können. Der Alphawert des Materials in Verbindung mit Fresnel und Fac ist nun dafür zuständig, die Oberfläche durchsichtig zu machen. Durchsichtig bedeutet in diesem Fall, dass die Materialfarbe je nach Einstellung mehr oder weniger an der Oberfläche sichtbar ist. Bei Alpha = 0 erhalten Sie ein Glas, das ohne weitere Veränderungen als farblos durchsichtig erscheint.
Transmissivity (Lichtabsorption)
BearbeitenTransmissivity ist eine Eigenschaft, die man an vielen dicken Glasobjekten oder an Wasser gut beobachten kann. Je dicker das Glasobjekt ist, desto weniger Licht kommt hindurch, da die Durchlässigkeit eben nicht 100% beträgt. Dabei ist das keine Eigenschaft der Oberfläche, sondern des Körpers. Wenn Sie den Filter Wert erhöhen, werden die Lichtstrahlen das Glas immer schlechter durchdringen können, es entsprechend seiner Dicke einfärben und an einigen Stellen dann vielleicht sogar wieder undurchsichtig erscheinen lassen, auch wenn der Alphawert des Materials auf null steht. (Abb.4)
Transmissivity wird über die folgenden drei Buttons eingestellt.
9 Filter: Transparentes Glas ist vollständig durchsichtig, was auch bedeutet, dass es kein Licht absorbiert. Das ist natürlich unrealistisch. Insbesondere farbiges Glas sollte Licht anderer Farben absorbieren. Das lässt sich mit der Filter Einstellung erreichen, auch wenn der Alphawert des Materials 0 ist!
10 Limit: Ein Wert über 0 aktiviert Transmissivity. Das Licht wird beim Durchgang durch das Objekt abgeschwächt. Der Limitwert begrenzt die Abschwächung, jeder Lichtstrahl der länger ist als Limit Blendereinheiten, wird nicht weiter abgeschwächt. Empfohlene Einstellung: 100.
11 Falloff: Exponent der Berechnung der Lichtabschwächung für Transmissivity. 1 bedeutet linearer Falloff, 2 quadratischer Falloff, 0.5 entsprechend eine Abhängigkeit von der Quadratwurzel aus dem Lichtweg. Diese Einstellung gibt dem Glas optisch Tiefe und Dicke.
Den Effekt der Transmissivity-Einstellungen sehen Sie bei einem Falloff von 1 einigermaßen deutlich nur unter bestimmten Voraussetzungen:
- Das Glasobjekt ist ziemlich dick.
- Der Alphawert des Materials ist nicht durchgängig Null, am besten stellen Sie Alpha auf 1 und benutzen Fresneltransparenz.
- Der Filterwert des Materials beträgt ca. 0.5.
Lichtbrechung
BearbeitenAn der Grenze zweier transparenter Medien erfährt die Richtung eines Lichtstrahls eine Änderung. Diese Erscheinung wird als Lichtbrechung bezeichnet. Lediglich bei einem senkrechten Einfall des Lichtstrahls auf die Grenzfläche der beiden Medien erfolgt keine Richtungsänderung. Die hierbei wichtigen Zusammenhänge werden durch das Brechungsgesetz beschrieben. [1] Das Maß für die Stärke der Brechung wird mit dem Brechungsindex bei Wikipedia angegeben, der dem IOR-Wert in Blender entspricht.
Verschwommene Lichtbrechung
Bearbeiten5 Gloss: Wie unscharf die Brechungen sind. Ein Wert von 1 bedeutet vollkommen scharfe Darstellung der Brechungen. Werte geringer als 1 erzeugen immer verschwommenere Ergebnisse, benötigen aber auch höhere Samplewerte.
6 Samples: Um den endgültigen Farbwert für ein Pixel berechnen zu können, muss ein Durchschnittswert aus verschiedenen Samples berechnet werden. Dafür muss der ursprüngliche Raystrahl aber feiner untergliedert werden, was die Renderzeit erhöht. Sollen sehr verwaschene Brechungen berechnet werden, ist ein hoher Samplewert unbedingt erforderlich, da sonst ein Bildrauschen auftritt.
7 Thresh: Der Grenzwert für adaptives Sampling. Höhere Werte beschleunigen den Rendervorgang, können aber auch Rauschen im Bild erzeugen.
Glanzpunkte
BearbeitenGlanzlichter (Specular Light) sind etwas, was es in Wirklichkeit so nicht gibt. Aber sie lösen ein großes Problem. Mit Glanzlichtern werden die Spiegelungen der Lampen auf Oberflächen simuliert. Leider unterliegen, wie eigentlich erforderlich, die Glanzlichter nicht den Veränderungen, wie sie durch Falloff erzeugt werden. Man kann sie aber abschwächen und blasser werden lassen. Zuständig dafür ist der Button 12 SpecTra.
Spiegelung
BearbeitenFür alle wichtigen Informationen über Spiegelungen lesen Sie bitte im Artikel Raytracing-Spiegelungen nach.
Transparent Filtering (Transparentes Filtern)
BearbeitenDer Filter operiert nur mit dem transparenten Anteil des Materials, egal ob diese Transparenz durch den Alphawert oder durch die Fresneleinstellung erzeugt wurde. Steht Filt auf 0.0 passiert das Licht unverändert das Material. Bei 1.0 wird es vollständig mit der Materialfarbe gefiltert. Um einen Farbfilter zu erzeugen setzen Sie Alpha auf 0 und Filt auf 1. Beim Material der Objekte, auf die das gefilterte Licht fällt, muss TraShadow auf dem Shaders-Panel aktiviert sein.
Inhaltliche Zusammenfassung
BearbeitenWarum kann man durchsichtige Materialien sehen?
- Sie spiegeln das Licht - den Diffuse-Anteil in Blender. Das kann Blender über Ray Mirror oder über Environmentmaps berücksichtigen.
- Sie zeigen Glanzpunkte - der Spec-Anteil in Blender. Um diese zu variieren, kann u.U. eine Spec-Map notwendig sein. Glanzpunkte sind Spiegelbilder der Lampen! Auf diese trifft der Fresnel-Effekt genauso zu wie auf alle anderen Reflexionen, Blender berücksichtigt das aber nicht.
- Sie ändern die Lichtfarbe/Lichtintensität. Dazu benutzt man das Transparent Filtering und Transmissivity.
- Sie sind ungleichmäßig dick (Fensterscheiben) oder variieren im Brechungsindex. Dafür eignen sich insbesondere Alpha- und Normalmaps.
- Sie sind schmutzig. Go wild. ;-)
Sie können Glas auch ohne Raytracing erzeugen, allerdings verlieren sie dann den IOR, das Transparent Filtering und die Transmissivity.
Einfaches Glasmaterial
BearbeitenEin Glasmaterial in Blender anzulegen ist sehr einfach. Benutzen Sie für klares Glas einfach die Einstellungen aus Abb.10.
1 Die Farbe des Glases
2 Setzen Sie Alpha auf einen Wert kleiner als 1
3 In der Realität wird die Oberfläche um so unsichtbarer, je stärker das Material spiegelt. Hier sind jedoch Werte gewählt worden, die einfach "gut" aussehen und keine Rücksicht auf "physikalisch korrekte" Einstellungen nehmen.
4 Ref und Spec-Werte übersteigen in der Realität nie die 100% Marke, weil ein Objekt nicht mehr Licht abstrahlen kann, als es empfängt. Gleiche Begründung wie bei den Ref Einstellungen.
5 Aktivieren Sie Ray Mirror
6 Aktivieren Sie Ray Transp
7 Stellen Sie Ray Mir auf einen Wert kleiner 1, sonst sehen Sie nur die Spiegelungen.
8 Stellen Sie Fresnel auf einen Wert größer 0 und den zugehörigen Fac auf einen Wert größer 1.
9 Stellen Sie den Brechungsindex auf 1.51, was normalem Fensterglas entspricht.
10 Stellen Sie Fresnel auf einen Wert größer 0 und den zugehörigen Fac auf einen Wert größer 1.
Alphakanal speichern: Raytracing Transparenz kann als Alphawert in einem entsprechenden Bildformat (z.B. PNG oder TGA) gespeichert werden. Stellen Sie dazu in den Render Buttons im Format Panel RGBA ein. Klicken Sie im Render Panel auf Premul, damit der Hintergrund nicht mit gerendert wird.
Fußnoten und Einzelnachweise
BearbeitenWeblinks
BearbeitenTransparent Filtering in Blender
Multimaterial
Bearbeiten
Diese Seite bezieht sich auf Blender v2.37a |
Die meisten komplexeren Gegenstände sind aus mehreren Objekten zusammengesetzt. Aber es gibt Situationen (insbesondere z.B. beim SubSurface Modelling) wo ein Objekt aus einem Mesh besteht, aber verschiedene Materialien tragen soll.
Kurzanleitung
BearbeitenUm einem Mesh verschiedene Materialien zuzuweisen, sind vier Schritte notwendig:
- Die die Flächen aufspannenden Vertices müssen ausgewählt werden.
- Nun muss ein neuer Material index erzeugt werden. Sozusagen eine Speichermöglichkeit für eine Gruppe von Vertices. Editing Buttons (F9) -> Link and Materials Panel -> New
- Diesem Speicherort werden (im Editmodus) die ausgewählten Vertices zugewiesen (->Assign). Man würde wohl in anderen Programmen davon sprechen, dass die Vertex Gruppe dort gespeichert wird. Die Vertexgruppe wird dadurch nicht verändert (warum auch?), behält insbesondere noch ihr Material.
- Schließlich kann dieser Vertexgruppe ein eigenes Material zugewiesen werden.
Die Schritte 1 und 2 können vertauscht werden.
Anzahl der Materialien:
Ein kleines Problem: Sie können einem Mesh höchstens 16 verschiedene Materialien zuweisen. Benötigen Sie mehr Materialien, teilen Sie das Objekt in verschiedene Meshes auf (Separate mit der P-Taste).
Ausführliches Beispiel
BearbeitenDiese vier Schritte werden wir an einem ausgearbeiteten Beispiel nachvollziehen.
Wir werden eine Kugel mit zwei verschiedenen Materialien versehen. In Abbildung 1 sind alle Vertices der Kugel ausgewählt, wie Sie im Material Panel erkennen können, hat das Mesh lediglich ein Material (erste Zahl), und dies ist das gerade ausgewählte (zweite Zahl).
Machen Sie das Material rot, (R=1, G=0, B=0). Klicken Sie auf das Auto-Icon . Der Name des Materials sollte nun "Red" lauten. Schalten Sie in den Shaded-Modus (Z-Taste), erscheint die Kugel im 3D-Fenster rot. Schalten Sie mit Z wieder zurück in den Wireframe-Modus.
Wählen Sie die obere Hälfte der Kugelvertices aus. Das geht am schnellsten in der Seitenansicht (Num-1) mit Blockselect (B-Taste).
Wechseln Sie in die Editing Buttons (F9). Im Link and Materials-Panel sind zwei Buttongruppen, wir brauchen hier die rechte Seite unter Red, dem Namen des Materials. Hält man den Mauszeiger über den rechten New Button, erscheint der Tooltip: Adds a new Material index.
Klicken Sie auf New, damit erzeugen Sie den neuen Material index. Die Angabe im Zahlenfeld sollte jetzt 2 Mat: 2 lauten.
Klicken Sie auf Assign. Jetzt haben Sie die Vertices gespeichert. Über die Buttons Deselect und Select können Sie prüfen, ob Sie alle benötigten Vertices gespeichert haben. Sie können allerdings nicht einzelne Vertices zur Gruppe hinzufügen oder aus ihr entfernen.
Vertex Groups:
Wollen Sie komplizierte Auswahlen erstellen, benutzen Sie die Vertex Groups (auf dem gleichen Panel). Die funktionieren fast genauso wie die Material Indizes, mit Assign und Remove können Sie Vertices zur Gruppe hinzufügen, oder aus ihr entfernen.
Bis jetzt sehen Sie noch keine Änderung an ihrem Objekt. Beide Vertexgruppen tragen das gleiche Material. Sie müssen der neu erzeugten Gruppe ein eigenes Material zuweisen. Dazu wechseln Sie zurück in die Shading-Buttons (F5).
Jetzt haben Sie drei Möglichkeiten.
- Klicken Sie auf die 2 neben dem Materialnamen, erstellen Sie eine Single user-Kopie.
- Erstellen Sie ein neues Material oder wählen Sie ein vorhandenes aus .
- Kopieren Sie ein Material aus dem Zwischenspeicher .
Wir werden eine Single user Kopie erstellen. Ändern Sie die Farbe auf (R=0, G=0, B=1). Klicken Sie auf den Auto-Button.
Sollte ihr Bild nicht so aussehen wie in Abbildung 5, haben Sie wahrscheinlich vergessen, den Assign-Button zu drücken. Das wird gerne vergessen, man ist von anderen Programmen auch daran gewöhnt, dass die Auswahl automatisch einer neu erstellten Gruppe zugewiesen wird. Das ist in Blender nicht der Fall.
Neue Objekte mit mehreren Materialien
BearbeitenFügt man mit Strg-J zwei Objekte zusammen, so behalten die Vertices ihren Material index. Das zusammengefügte Objekt trägt also mehrere Materialien.
Trennt man ein Objekt mit mehreren Material Indizes, so trägt jedes einzelne Objekt alle Indizes des Ursprungsobjektes.
Auch durch Boolsche Operationen erstellte Objekte tragen mehrere Material Indizes, nämlich die der Ausgangsvertices.
Und schließlich trägt das Ergebnis der Radiosity-Modellierung mehrere Material Indizes (was auch das größte Problem ist, da dabei häufig mehr als 16 verschiedene Objekte zusammengefasst werden).
Links
BearbeitenDie englischsprachige Vorlage dieses Textes
HTML-Tutorial (deutsch)
Flash-Tutorial (deutsch)