POVRAY Raytracer Beschreibungen von |
|
Gestaltung von Oberflächen ("Texturieren")Da kommt Farbe auf ! "color ... " Mit dem Befehl "pigment { color .... } " wird die Farbe bzw. das Farbmuster der Textur definiert. Neben der Farbe kann auch die Durchsichtigkeit (transparence) bz.. Filterdichte (filter) angegeben werden! Beispiele: Sofern in einer vorhergehenden Zeile: #include "colors.inc" in Text eingefügt ist, kann mit vordefinierten Farben mit amerikanisch-englischen Namen gearbeitet werden, z.B.: pigment{ color Red } Zu den dadurch zur Verfügung stehenden ca. 100 Farben vgl. gesonderte Liste! Das menschliche Auge kann nahezu 16 Mio Farben ("true color") unterscheiden! Daher ist es öfters nötig sich weitere Farben selbst zu machen. ( Für TrueColor-Farben wie sie POVRAY verwendet, werden für jede der 3 Grundfarben 1 Byte reserviert. Auf einem Byte kann man von 0 bis 255 zählen, dem entspricht eine Farbintensität von 0% bis 100 %. Es lassen sich mit 3 Byte pro Punkt somit 256*256*256 = ca. 16 Millionen verschiedene Farbwerte mischen. Verwendet man bei der Darstellung von feinen Farbschattierungen weniger Farben, erscheint der Farbübergang an vielen Stellen stufig! ) Neue Farben selbst machen: "color rgb< , , >"
Es läßt sich jede beliebige Farbe aus Rot, Grün und Blau mischen ("Additive Farbmischung"!), dazu verwendet man die Anweisung "color rgb< , , >" (red, green, blue). Statt "color rgb<1 , 1 ,0 >" kann man auch " color red 1 green 1 blue 0 "schreiben.
Sofern in einer vorhergehenden Zeile #include "colors.inc" steht, kann man vorgefertigte Farben mit den englischen Bezeichnungen verwenden!Hier einige Beispiele für RGB Farben und ihre englische Bezeichnung, sofern sie in "colors.inc" definiert sind.
*) Lohmüllers Lieblings-GelbEs lohnt sich hier selbst weiter zu experimentieren ! Eigene Farbkrationen lassen sich dauerhaft für alle eigenen Szenen mit eigenen Farbnamen zur Verfügung stellen, indem man sie in einer gemeinsamen Include-Datei ablegt. Mehr dazu siehe unter "Wie legt man seine eigene Farben und TexturenSammlung an?" Sofern in einer vorhergehenden Zeile #include "textures.inc" steht, kann man fertige Farbmuster ("pigment") und Texturen ("texture") die in dieser Datei definiert sind verwenden. Achtung: Die Include-Datei textures.inc benötigt colors.inc !!! Neben dem Farbton läßt sich auch die Durchlässigkeit einer Farbe mit einer zusätzlichen Zahl steuern! Aber Vorsicht - da das Programm dann die Körperfarbe und die Hintergrund-Farbe im geforderten Verhältnis und beides mal abhängig von der Beleuchtungsrichtung zusammenrechnen muß, explodiert bei zuviel solchen Texturen die Rechenzeit --- und der Spaß nimmt umgekehrt proportional dazu ab !!!!! Die Durchlässigkeit einer Farbe mit Filterwirkung (Körperfarbe filtert Hintergrundfarbe) wird durch den Wert "filter" abgekürzt mit "f" beschrieben, "transmit" abgekürzt "t" gibt den Farbdurchlaß ohne Filterung an. Schreibweise:"pigment{color rgbf <1.0 ,0.5,0.0,1.0>}" oder auch "pigment{color rgb<1.0,0.5,0.0> filter 1.0}". Ein Körper mit "color rgb <0.9,0.9,0.9>" erscheint durch ein Filter wie "color rgbf <1, 0.5,0.0,1.0>", wie in der Farbe "color rgb <0.9,0.45,0.0> gefärbt. Rot 100%, Grün 50% ( 0.45) und Blau völlig blockiert! Transparente Farbpartien finden ihre wichtigste Anwendung bei >überlagerten Texturen (layered textures). Durch sie lassen sich über undurchsichtige Mustertexturen teilweise durchsichtige Texturen legen. Mit dieser Technik kann man Steinstrukturen mit darüberlaufenden dunklen oder hellen Adern erzeugen. |