Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller
Gestaltung des Inneren von transparenten Körpern in POV-Ray
English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  Inhaltsübersicht
  material, interior, media

  - Syntax material
      texture + interior
  - Window Glass
      + max_trace_level
  - Nebel - fog
  Media
  - Syntax Media
  - Media + Density Maps
  Atmospheric Media
    mit/ohne density map
  - Lichtkegel im Nebel
  Object Media
  Emitting Media
  - Lichtschwert
  - Kerzenflammen
  Scattering Media
  - Licht durch Fenster
  - Dampf, Rauch, Wolken
  Absorbing Media
  - Staubteufel
  Spezialprobleme mit Media
  - Skalieren von Media
  - Überlappende Media
                                             

Syntax von "material"

Das Syntaxschema für "material","texture" und "interior" an einem einfachen Beispiel:

sphere{ <0,0,0>, 1
        translate<0,1,0>
        material{
          texture { pigment{ color rgbt<1,1,1,0.5>}
                    normal { bumps 0.5 scale 0.025 }
                    finish { phong 1.0 }
                  } // Ende der Texturbeschreibung
          interior{ ior 1.5
                    caustics 0.25
                  } // Ende der Interior-Beschreibung
          } // Ende der Material-Beschreibung
      } // Ende der Kugelbeschreibung

material{...}" ist ein Container für die folgenden Eigenschaften:
texture {...}" ist ein Container für Eigenschaften Oberflächenbeschaffenheit (Textur)
                        (Färbung, Rauhigkeit, Helligkeit, Glanzeigenschaften; Transparenz) und
interior {...}" ist ein Container für Eigenschaften des Körperinneren
                        (Brechungsindex = ior, Kaustik, Lichtabsorption, Dispersion) .

Dabei ist "texture{...}" ebenfalls als Container der Eigenschaften "pigment{...}" (Färbung) und "normal{...}" (simulierte Oberflächendeformation) und "finish{...}" (Glanz- und Transparenz-Eigenschaft) aufzufassen.
Alle diese Eigenschaften (pigment, normal, finish und interior) können auch ohne die jeweiligen Übercontainer material{...} bzw.texture{...} einem Körper zugeordnet werden.
Die Container "texture{...}" bzw. "material{...}" erweisen sich jedoch als sehr nützlich, wenn man eine Materialeigenschaft relativ zum Körper transformieren oder wenn man für ein Material oder eine Texture mittels "#declare" einen Platzhalter definieren will.

Von rechts nach links:             Ohne Transparenz,
                                mit Transparenz, ohne ior,
              mit ior (Brechung), ohne caustics,
mit ior + caustics.
  Demonstration der Lichtbrechung mit ior + caustics
 
 
 

interior
Interior Grundeinstellungen (default values):
ior                : 1.0
caustics           : 0.0 // Für > 0 simuliert dies Caustics - nur vorgetäuscht, variiiert daher nicht mit der Entfernung und
                         // ist begrenzt auf Teile die durch das transparente Objekt schattiert werden!
                         // 0.25, ~ 1  - 2
dispersion         : 1.0 // dies simuliert Dispersion verursacht durch Lichtbrechung
dispersion_samples : 7
fade_distance      : 0.0 (0=off) = Entfernung mit halber Intensität -
                         = Nachlassen der Lichtintensität mit zunehmender Entfernung
fade_power         : 0.0 (0=off)  (realistisch: 1~2,
                                  >=1000 ->Realistische exponentielle Auslöschungsfunktion wird benutzt!
fade_color         : <0,0,0>
top

© Friedrich A. Lohmüller, 2009
www.f-lohmueller.de