Tauschtexturen

Aus EEP Wiki
Wechseln zu: Navigation, Suche

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.

Tauschtexturen 01.jpg

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:

Tauschtexturen 02.jpg

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.

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

Die Hausnummer ist mit Tauschtextur versehen.
Separate Bilddatei mit Tauschtextur-Inhalt.

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. In diesem Falle reichen 256x256 Pixel. Bei der Texturgröße und beim Dateiformat gelten auch hier die üblichen Vorgaben.

Eintrag in der Datei texturen.txt

Zusätzlich zu den allgemeinen Vorgaben muss die ID der Textur in der Datei texturen.txt um 1 größer sein als die der zugehörigen Haupttextur, also z. B. so:

Textur{ id(5123) name(5123) automipmap()  magfilter(1) minfilter(5) }
Textur{ id(5124) name(5124) automipmap()  magfilter(1) minfilter(5) usertexture() }

Außerdem erhält der Eintrag der Tauschtextur am Zeilenende das Attribut usertexture()


Zuweisen der Tauschtextur im Home-Nostruktor

Anlegen der Fläche als *.kon-Datei für die Hausnummer

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

Anlegen der Fläche in einem externen Konstruktionsprogramm
Der Instanzen-Dialog im Home-Nostruktor

Schaffen Sie ein separates Objekt, das Sie mit der Textur aus der Tauschtexturdatei belegen. Exportieren Sie das Objekt in für den Home-Nostruktor geeigneter Form (mittels PlugIn bzw. als *.x-Datei).
Importieren Sie das Objekt im Home-Nostruktor. Es wird im Instanzen-Dialog aufgelistet.

Der Modellexport

Am Attribut usertexture() erkennt der Home-Nostruktor beim Export des Modells die Tauschtextur also solche und lagert sie aus der 3DM-Kapsel aus. Sie wird jetzt als separate Datei innerhalb der Modellinstallation in eep vorgehalten. Somit ist gewährleistet, dass sie der Anwender mit einem Bildbearbeitungsprogramm bearbeiten, also tauschen, kann.

Speicherort für Tauschtexturen

Die ausgelagerte Texturdatei trägt grundsätzlich den Namen des 3DM-Modells. Der Konstrukteur muss das Installationsskript so einrichten, dass die Tauschtextur im Ordner Resourcen\Tauschtexturen abgelegt wird. Heißt also eine 3DM-Datei Beispiel_XYZ.3dm, so muss auch die ausgelagerte Textur-Vorlage Beispiel_XYZ.??? heißen und im Ordner Resourcen\Tauschtexturen liegen.

Beispiel für ein Installationsskript

[EEPInstall]
EEPVersion	 = 7
File001	 = "Geigenbauerhaus_HW1.3dm","Resourcen\Immobilien\Domizil\Stadt\Geigenbauerhaus_HW1.3dm"
File002	 = "Geigenbauer_TT_HW1.png","Resourcen\Tauschtexturen\Geigenbauerhaus_HW1.png"
File003	 = "Geigenbauer_TT_SIK_HW1.png","Resourcen\Tauschtexturen\Geigenbauerhaus_TT_SIK_HW1.png"

Die letze Zeile installiert eine Sicherheitskopie Geigenbauerhaus_TT_SIK_HW1.png der Tauschtextur. Falls der Anwender bei seinen Versuchen, die Tauschtextur zu bearbeiten, scheitert, kann er die Sicherheitskopie auf den Namen der ursprünglichen Datei kopieren und der Auslieferungszustand des Modells ist wieder hergestellt.

Mehrere Tauschtexturen

Manchmal ist eine einzige Tauschtextur nicht hinreichend, besonders dann, wenn ein Teil des editierbaren Bereiches der Textur animiert werden soll und ein anderer nicht. Deshalb unterstützt der Home-Nostruktor bis zu drei Tauschtexturen innerhalb eines Modells.


Werden mehr als eine Tauschtextur verwendet, so lauten die Einträge in der Datei texturen.txt so:

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() } 

(Die fehlende "1" am Ende der ersten Zeile ist kein Fehler.)

Auch hier lagert der Home-Nostruktor beim Export des Modells die Texturen aus. Der Konstrukteur packt sie wie oben beschrieben in das Installationsverzeichnis und das Installationsskript. Dabei gelten diese Namenskonventionen:

 Beispiel_XYZ.png  Beispiel_XYZ2_.png Beispiel_XYZ3_.png 

Das Einfügen des Unterstriches vor dem Punkt (_.) soll verhindern, dass es zu Konflikten mit solchen Modellbezeichnungen kommt, die mit einer Nummerierung enden, 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 wird.


[2.7 Arbeit mit Texturen|Kapitel Arbeiten mit Texturen]
Zurück zur Startseite