Arbeit mit Texturen
7. Arbeiten mit Texturen
Wie in der Vorbereitung bereits erwähnt sind Texturen eine Zusammenstellung aus bearbeitetem Bild- und Fotomaterial bzw. eigens erstellten fotorealistischen Material. Die Texturen sind ein entscheidender Bestandteil, um unseren späteren Modell ein gutes und realistisches Aussehen zu verleihen. Der Einsatz von Texturen stellt ein Standardverfahren der Computergrafik zur Verbesserung der Qualität von dreidimensionalen Szenerien dar. Die grundlegende Motivation für den Einsatz von Texturen ist es, den Realismus in der Darstellung von komplexen Oberflächenstrukturen zu verbessern, ohne dabei die Komplexität des gegebenen polygonalen Modells zu erhöhen.
Für die Erstellung der Texturen ist der Einsatz von Grafik- bzw. Bildbearbeitungsprogrammen unverzichtbar. Im Kapitel "Empfohlene Zusatzsoftware" sind einige solcher Programme aufgelistet. Die dort erwähnten Programme werden als "open source" angeboten und machen somit eine kostspielige Investition in Kaufsoftware zumindest vorerst überflüssig. Die Arbeit mit Grafikprogrammen ist je nach Programmtyp und -tiefe teilweise sehr komplex. Es ist hier am Besten sich zu Beginn der Texturarbeit verschiedene Programme herunterzuladen und diese einfach auszuprobieren. Oftmals merkt man intuitiv recht schnell, welches Programm zu einem passt und welches eben eher weniger. Unser Kapitel zu "Arbeiten mit Texturen" wird den Teilsektor der Texturarbeit im HomeNos selbst behandeln. Für Hilfestellungen bei der Texturerstellung selbst stehen in den jeweiligen Grafikprogrammen Hilfetexte und teilweise auch Tutorials bereit.
7.1. Unterstütze Bilddateiformate
Der HomeNos unterstützt die Bilddateiformate
- .tga (Truevision Advanced Raster Graphics Array),
- .tga (Truevision Advanced Raster Graphics Array),
- .dds (direct draw surface) und
- .dds (direct draw surface) und
- .png (portable network graphics)
- .png (portable network graphics)
Alle drei Dateiformate zeichnen sich dadurch aus, dass sie mit sogenannte Alphakanälen arbeiten und diese abspeichern können. Dies ist für die Arbeit an einem Modell sehr wichtig, wie wir uns in einem kurzen Beispiel ansehen. Wir erinnern uns vielleicht an unsere Stadthaustextur im Kapitel "Arbeiten mit .kon.Dateien". Im folgenden sehen wir einen Ausschnitt der Textur. Dort ist die Fensterreihe im ersten Stockwerk und die Eingangstür nun mit einem Alphakanal belegt, der grün dargestellt wird:
Der Texturausschnitt mit dem Alphakanal sieht auf eine .kon-Datei aufgebracht nun im 3D-Betrachter folgendermaßen aus:
und die gleiche .kon-Datei mit der Textur ohne Alphakanal:
Denken wir nun daran, daß wir in unserem Stadthaus ggf. eine Inneneinrichtung modellieren möchten, die später im Modell sichtbar sein soll, können wir bereits erahnen wie wichtig die Unterstützung von Dateiformaten mit Alphakanal ist.
7.2. Anlegen von Texturen
Neue Texturen für unser Modell legen wir im .kon-Dateien-Dialog mit der Schaltfläche an. Wir erhalten nun folgendes Dialogfenster, in welchem wir die Eigenschaften der neuen Textur festlegen können:
Parameter und Kurzbeschreibungen
- id()
- Unter diesem Parameter wird die eindeutige Textur-ID angegeben. Nur Ganzzahlen sind möglich. Null vor einer Zahl (wie bei Namen) ist kein gültiger Wert. Dieser Parameter muss unbedingt angegeben werden. Bei der Anlage der :::Textur über unser Dialogfeld wird die ID der Textur automatisch vergeben. Möchten wir - aus welchen Gründen auch immer - bestimmte ID-Werte vergeben, können wir auf das "händische" Anlegen einer Textur zurückgreifen, was wir :::im Kapitel "Die Vorbereitung" bereits besprochen haben.
- id()
- name()
- Name der Datei mit dem Texturbild ohne Endung (*.tga, *.dds, *png). Der Name kann alphanumerisch sein, darf aber keine Leerzeichen und Umlaute enthalten. Für die Übersicht sinnvoll ist ein Name, der der Texturen-ID entspricht. ::Dieser Parameter muss unbedingt angegeben werden. Der Name ergibt sich bei der automatischen Anlage der Textur über das Dialogfeld aus dem Dateinamen unserer Bilddatei, die wir über die Schaltfläche "Texture Bitmap" ::hinzufügen.
- name()
- automipmap()
- Gibt an, dass Mipmaplevel mit verringerter Auflösung automatisch erstellt worden sind. Es muss kein Wert übergeben werden, um das Mipmapping tatsächlich einzuschalten.
- automipmap()
- opacity()
- Gibt an, dass und in welchem Grade eine Textur eine Fläche durchsichtig erscheinen lassen soll. Gültige Werte sind 0.0 (unsichtbar) bis 1.0 (opak). Dieser Parameter wird nur dann benutzt, wenn die Textur tatsächlich eine ::Opazität, also Transparenzgrad erhalten soll, wie z.B. bei Glasscheiben usw.
- opacity()
- billboarding()
- Mit diesem Parameter wird die Fläche der Polygone durchbrochen. Wird nur dann benutzt, wenn die Textur Durchbrüche aufweist (Fensteraussparungen, Geländerzwischenräume usw.)
- billboarding()
- <font color="red"repeat_s()
- Wenn dieser Parameter vorhanden ist, werden die Texturen in X-Richtung wiederholt, sobald sie den Bereich 0.0 - 1.0 überschreiten. Zum Parameter wird kein Wert übergeben.
- <font color="red"repeat_s()
- repeat_t()</>
- Wenn dieser Parameter vorhanden ist, werden die Texturen in Y-Richtung wiederholt, sobald sie den Bereich 0.0f- 1.0 überschreiten. Zum Parameter wird kein Wert übergeben.
- repeat_t()</>
- magfilter()
- Gibt den Magnification-Filter an. Gültige Werte sind: 0 und 1. Dieser Parameter muss unbedingt angegeben werden!
- magfilter()