Beschreibungen und Beispiele zum Raytracer POV-Ray von Friedrich A. Lohmüller
Gestaltung von Oberflächen mit POV-Ray -
English English English
Italiano Italiano
Français français

Home
- POV-Ray Tutorial

  Oberflächengestaltung
  - Farben und Texturen
    Inhalt

    texture Syntax
    Vorgefertigtes
    Farben Do-it-Yourself
    Muster
    Muster Listen
    Warps
    - warp mapping
    uv_mapping
    Mapping
    > Mapping-Methoden
    - color_map{ ... }
    - pigment_map{ ... }
    - texture_map{ ... }
    - normal_map{ ... }
    - average
    - material_map{ ... }
    - image_map{ ... }
    - image_map+gif 1
    - image_map+gif 2
    - image_map+gamma
    - bump_map{ ... }
    - transparency maps 1
    - transparency maps 2
    - transparency maps 3
    Überlagerungen

    Eigene Texturen
 
                                           

mapping - Texturierung mit Mustern.

Von "mapping" redet man in der Raytracer- und Rendering-Technik, wenn man die verschiedenen Methoden des Auftragen von Mustern und komplexen Texturen auf Körperoberflächen beschreibt. Dabei werden zwei grundsätzlich zu unterscheidende Methoden angewandt:


1. color_map / pigment_map / texture_map / normal_map

Das Einfärben bzw. Texturieren wird durch ein mehr oder weniger verwirbeltes Steifenmuster aus Farben / Pigmenten / Texturen / Oberflächenstrukturen ("normal") definiert (color_map / pigment_map / texture_map / normal_map), die nach einer räumlichen Musterfunktion (gradient<0,1,0> / agate / bozo / wood / etc.) über den gesamten Raum verteilt vorstellbar sind. Durch Zuweisung dieser Textur an ein Objekt erhält dieses Objekt die Textur auf seiner Oberfläche. Dies geschieht ganz so, als sei dieses Objekt an der Stelle, an der es sich gerade befindet aus einer Masse mit dieser Textur herausgeschnitten worden. Man stelle sich diese Texturen etwa wie die Maserung im Holz vor.

Verschiebt man vor der Texturierung das Objekt an eine andere Stelle in Raum, so erhält es einen anderen Ausschnitt der Maserung. Andererseits läßt sich die Textur auch innerhalb ihrer Klammern beliebig skalieren, drehen und verschieben und so eine geeignete Mustergröße, eine geeignete Musterrichtung und/oder ein geeigneter Musterausschnitt erreichen.


2. image_map / material_map / bump_map

Die zweite Methode stellt man sich besser als das Aufprojizieren von Bildern auf Objekte vor. Dabei wird ein Bild, welches in einer Bilddatei (erlaubt sind: iff, gif, tga, png, sys) gespeichert ist, nach verschiedenen Methoden in den Raum projiziert. Durch die Texturzuweisung bildet der Körper des Objekts die Projektionsoberfläche. Wobei die Projektion beidseitig erfolgt - von vorn und hinten. Bei vielen professionellen Renderprogrammen ist dies die Standard-Methode um gemusterte Oberflächen zu erzeugen - bei billigeren Programmen sogar die einzige! Sie werden daher meist von ganzen CDs voller Fotos von Oberflächen im GIF- oder BMP-Format begleitet. Man muß sich jedoch immer vor Augen halten, daß alle Bilder, die hierbei verwendet werden, während der Berechnung der Szenerie ihren Platz im RAM beanspruchen - und dies kann schnell zu Problemen führen! Ferner sind zum Erzeugen von natürlichen Materialoberflächen nur Bilder geeignet, die beim wiederholten Aneinanderkleben sowohl quer als auch senkrecht, keine störenden Bruchlinien erzeugen. D.h. solche Bilder sollten einen sogenannten "Rapport" besitzen, genau wie gemustertes Tapetenpapier!

Durch den Befehl"map_type..." wird der Projektionstyp (default: map_type 0) festgelegt.
Es können folgende Projektionstypen verwendet werden:
  "map_type 0" = planar -> projiziert auf xy-Ebene von <0,0,0> bis <1,1,0> parallel zur z-Richtung.
"once"-Schlüsselwort = nur einmal (-->
Beispiel zu image_map ), sonst wird weitertapeziert bis zum Ende der Welt
Will man ein bestimmtes Bildformat erreichen, so muß dies durch nachträgliches Skalieren der image_map oder material_map geschehen. Jedes Bildformat wird auf die 1x1-Fläche zunächst quadratisch projiziert!
  "map_type 1" =spherical >Kugelprojektion - y-Achse= Nord/Süd-Pol, das Bild beginnt mit der positiven x-Richtung
Das "once"-Schlüsselwort ist hier ohne Wirkung.
  "map_type 2" = cylindrical >Zylinderprojektion - immer einmal um die Y-Achse gewickelt,
beginnend mit y=0 bis y=1 - "once" wirkt hier!
Die Typen 1 und 2 entsprechen etwa der Umkehrung der Abbildung der Erdoberfläche auf eine ebene
rechteckige Landkarte. 3 und 4 sind für spätere Entwicklungen reserviert!
  "map_type 5"=torus > Torus-Projektion - Das Bild erscheint um einen Ring mit großem Radius=1 gewickelt, beginnend mit der positiven x-Achse.
Der Befehl "interpolate .." : Interpolieren heißt hier Ausgleichen zwischen Bildpunkten. Dies ist bei der Vergrößerung oder Verkleinerung bei der Projektion oft nötig, um das Bild nicht zu körnig erscheinen zu lassen.
Mögliche Interpolationstypen: 0=none, 1=linear, 2=bilinear, 4=normalized distance
Normalized distance ist die etwas schnellere der "besseren beiden" , bilinear liefert die besten Resultate!
Erscheinen aufprojizierte Bilder zu grob, bringt oft das Interpolieren mehr, als das Verwenden von Bildern mit höheren Auflösungen.

top

© Friedrich A. Lohmüller, 2006
http://www.f-lohmueller.de