Tauschtexturen
Wie allen Simulationswelten am Computer sind auch eep Grenzen in Bezug auf die Individualität der Modelle gesetzt. Während der Modellbauer von jedem zunächst gleichen Modell mit Pinsel, Spachtel und Farbe individuelle Varianten herstellen kann, sehen in eep alle Exemplare des gleichen Modells exakt gleich aus. Der Konstrukteur kann zwar in engen Grenzen Farb- und Zustandsvarianten anbieten; der Gleichförmigkeit vieler 3D-Welten wird damit dennoch nur unzureichend begegnet.
Bei allem Respekt vor dem Erbauer dieser gelungenen eep-Anlage (im Lieferumfang von eep13 enthalten): Alle Strohballen sehen exakt gleich aus. In der Menge erzielen Sie eine leblose Wirkung.
Hier begegnen sich gerade zwei Straßenbahnen (es handelt sich um konvertierte Modelle aus der Frühzeit von eep). Sie fahren in entgegengesetzte Richtungen, haben aber das gleiche Fahrtziel und obendrein dieselbe Ordnungsnummer:
Viele dieser und ähnlicher Mängel lassen sich in eep lösen: Sie können die Konstruktion Ihrer Modelle so einrichten, dass der Anwender später eigene Varianten herstellen kann, ohne selbst "konstruieren" zu müssen. Das Verfahren wird in eep Arbeiten mit Tauschtexturen genannt.
Für die Realisierung sind von Konstrukteursseite aus nur wenige Schritte nötig.
Inhaltsverzeichnis
Was kommt in die Tauschtextur?
Für den Austausch auf Anwenderseite bieten sich kleinere Flächen auf dem Modell an, wie z. B. Fahrtziele, Beschilderungen, Betriebsnummern oder Hausnummern. In diesem Beispiel erfahren Sie das Anlegen einer Tauschtextur für zwei Hausnummern eines Eckgebäudes.
Anlegen der Tauschtextur
Das im Bild dargestellte Modell verfügt über eine übliche Textur für alle Flächen auf dem Modell. Die Hausnummer jedoch wurde in einer separaten Bilddatei abgelegt. Bei diesem Eckhaus sind dies zwei Nummern für die beiden Hausnummern in jeweils einer Straße.
Diese separate Bilddatei ist wesentlich kleiner als die Haupttextur des Modells. Bei der Texturgröße und beim Dateiformat gelten auch hier die üblichen Vorgaben. In diesem Falle reichen 256x256 Pixel.
Zuweisen der Tauschtextur im Home-Nostruktor
Das zugehörige Objekt, hier also das Blechschild mit der Hausnummer, wird im Nostruktor mit den üblichen Werkzeugen angelegt. Das Rechteck erhält diese Attribute.
Anschließend erhalten die vier Vertizes des Rechtecks ihre Texturkoordinaten.
Zuweisen der Tauschtextur bei externen Konstruktionsprogrammen
Schaffen Sie ein separates Objekt, das Sie mit der Textur aus der Tauschtexturdatei belegen.
Eintrag in der Datei texturen.txt
Um den Austausch bzw. Edition der Modell-Texturen seitens der User zu ermöglichen, wurde ein neues Attribut der Texturen in der Datei texturen.txt hinzugefügt: usertexture(), welches am Ende der Zeile eingetragen wird.
Beispiel:
Textur{ id(0001) name(0001) automipmap() magfilter(1) minfilter(5) usertexture() }
Sobald dieser Eintrag vorhanden ist, wird die Textur beim Export des Modells aus der 3DM-Kapsel ausgelagert, womit sie durch User mit einem Bildbearbeitungsprogramm bearbeitet (getauscht) werden kann. Die ausgelagerte Textur trägt grundsätzlich den Namen des 3DM-Modells und wird im gleichen Ordner gespeichert. Heißt also eine 3DM-Datei „Beispiel_XYZ.3dm“ und wird im Ordner Resourcen\Immobilien\Sehenswert\ gespeichert, so muss auch die ausgelagerte Textur-Vorlage „Beispiel_XYZ.???“ heißen und im gleichen Ordner: Resourcen\Immobilien\Sehenswert\ gespeichert werden.
Unterstützt werden die Bilddateiformate:
PNG, TGA, BMP und JPG.
Die Wandlung der Dateiformate der Textur-Vorlage in eine DDS-Datei übernimmt EPP mit EEP7 ab Plug-in 2 automatisch!
Aus der baulichen Praxis wissen wir, dass eine Tauschtextur bei manchen Modellen nicht ausreichend ist, speziell dann, wenn ein Teil des editierbaren Bereiches der Textur animiert werden soll und ein anderer nicht. Da die Attribute der Textur in der Texturen.txt eine globale Wirkung auf den kompletten Inhalt der Textur besitzen, so war z.B. derartige Unterscheidung zwischen animierten und nicht animierten Bereichen nicht möglich. Dies kann nur durch den Einsatz mehrerer Tauschtexturen erfolgen. Deshalb ist es mit dem HomNos nun möglich, bis zu drei Tauschtexturen innerhalb eines Modells zu nutzen.
Hinweis:
Bei der Bereitstellung der Modelle ist der Hinweis aufzubringen, dass mindestens EEP 7.5 mit Plug-in 5 vorausgesetzt wird!
Die jeweiligen Basic-Versionen von EEP 8.0/9.0 erlauben 1 Tauschtextur, die jeweiligen Expert-Versionen von EEP8.0/9.0 erlauben 3 Tauschtexturen
Um den Austausch bzw. Edition der Modell-Texturen seitens der User zu ermöglichen, wurden neue Attribute der Texturen in der Texturen.txt hinzugefügt: usertexture(), usertexture2(), usertexture3() welches am Ende der Zeile eingetragen werden. Beispiel:
Textur{ id(0001) name(0001) automipmap() magfilter(1) minfilter(5) usertexture() }
Textur{ id(0002) name(0002) automipmap() magfilter(1) minfilter(5) usertexture2() }
Textur{ id(0003) name(0003) automipmap() magfilter(1) minfilter(5) usertexture3() }
Sobald diese Einträge vorhanden sind, werden die jeweiligen Texturen beim Export des Modells aus der 3DM-Kapsel ausgelagert, womit sie durch User mit einem Bildbearbeitungsprogramm bearbeitet (getauscht) werden können. Die ausgelagerte Textur trägt bis zu der internen Nummerierung den Namen des 3DM-Modells und wird im gleichen Ordner, wie das Modell gespeichert. Eine Besonderheit stellt hier die Nummerierung der Usertextur dar, die nach dem eigentlichen Namen eine „2_“, und/oder „3_“ enthält. Heißt also eine 3DM-Datei „Beispiel_XYZ.3dm“ und wird im Ordner Resourcen\Immobilien\Sehenswert\ gespeichert, so sollten die ausgelagerten Textur-Vorlagen „Beispiel_XYZ.png“ , „Beispiel_XYZ2_.png“ und „Beispiel_XYZ3_.png“ heißen und im gleichen Ordner: Resourcen\Immobilien\Sehenswert\ gespeichert werden.
Beachtet bitte die spezielle Schreibweise, die einen Unterstrich vor dem Punkt der Dateiendung besitzt! Diese Schreibweise wurde speziell so eingerichtet, weil es bisher mehrere Modellnamen mit einer Nummerierung am Ende des Dateinamens gab, wie z.B. Haus_1, Haus_2, Haus_3 usw. In diesem Fall könnte sich die zugewiesene User-Textur mit dem Namen eines anderen Modells überschneiden, was durch die Schreibweise 2_.* und 3_.* weitestgehend ausgeschlossen werden.
Zur Erinnerung, die Reihenfolge der möglichen Textur-Attribute sieht wie folgt aus:
Id()
name()
automipmap()
opacity()
billboarding()
repeat_s()
repeat_t()
magfilter()
minfilter()
animfps(0.0)
animfrm_y()
usertexture()