Schnelleinstieg (für Fortgeschrittene)

Aus EEP Wiki
Wechseln zu: Navigation, Suche


Schnelleinstieg

Der "Schnelleinstieg" mit der sich anschließenden praktischen Übung richtet sich in erster Linie an Anwender, die mit den grundlegenden Techniken wie dem Zeichnen von Drahtgittern und dem Auftragen von Texturen (dem sogenannten UV-Mapping) vertraut sind. Auch wenn der Aufbau der Menüs, der Dialogfenster und die Werkzeuge zum Zeichnen des Drahtgitters weitgehend selbsterklärend sind, gibt es doch Besonderheiten und konzeptionelle Anforderungen, die in der folgenden Übersicht aufgelistet und erläutert werden.

Unterschiede und Neuerungen im Vergleich zu früheren Programmversionen vom Home-Nostruktor

Da wir versuchen, dieses Wiki aktuell zu halten mit den Funktionen der jeweilig aktuellsten Version, finden Sie hier Neuerungen der einzelnen Versionen. Wenn Sie also (noch) nicht die aktuellste Version besitzen, können Sie hier überprüfen, ob die im Wiki beschriebene Funktion in Ihrer Version bereits enthalten ist.

Neues im Home-Nostruktor 15

  • Beschriftungsfunktion für Modelle
  • neue Lichtfunktionen wie Veränderung der Helligkeit beim fertigen Modell
  • Neue Systemachsen: PingPong, _DriveDir (Fahrtrichtungsposition) und MoorRPM (Drehzahlmesser, Antriebsableitung)


Projekte im "Projects"-Ordner


Um eine bessere Übersicht und ein möglichst einfaches Verfahren bei der Datensicherung zu gewährleisten, werden 3D-Modelle mitsamt ihren Konstruktionsdateien sowie allen weiteren, für den Betrieb notwendigen Komponenten als Projekte im Projects-Ordner gespeichert. Die Konstruktionsdateien entsprechen jeder einzelnen Ansicht, ähnlich wie Layer in anderen Programmen. Die einzelnen Projektordner können auf externe Laufwerte oder USB-Sticks kopiert und auch von dort geöffnet bzw. gestartet werden.

Speicherung der Fenster in der zuletzt eingestellten Größe und Ansicht


Bei der Speicherung von Projekten wird jedes einzelne Fenster in der jeweiligen Lage, Größe und Ansicht separat mitgespeichert. Wird ein gesichertes Projekt erneut geladen, öffnen sich die einzelnen Fenster automatisch in der zuletzt genutzten Ansicht. Dies ist vor allem bei Projekten mit sehr vielen Konstruktionsdateien zeitsparend und hilfreich, da Sie die Arbeitsoberfläche so wiederfinden wie Sie diese bei der letzten Sitzung verlassen haben. Die Fenster von neu angelegten und noch nicht gespeicherten Projekten zeigen sich in einer Standardansicht, die Sie nach Belieben verändern und anpassen können.

Vertikale Ausrichtung in der Normalprojektion


Seit dem Home-Nostruktor 8.0 neu erzeugte KON-Dateien der Normalprojektion erhalten automatisch eine Ausgangsdrehung um die X-Achse von 270°, was im Instanzen-Dialog der KON-Dateien zu beachten ist und dort geändert werden kann.

Lage 270 grad.jpg

Die gezeichneten Konstruktionen werden also senkrecht aufgerichtet, so dass Sie das Objekt in der 3D-Projektion in seiner (uns natürlich erscheinenden) Ausrichtung betrachten können. Neu angelegte Instanzen, die einer KON-Datei hinzugefügt werden, "erben" automatisch die Parameter der zuletzt aufgerufenen Instanz, d.h. die Position, die Drehung, die Skalierung und alle weiteren Einstellungen wie z.B. das Face-Culling, die Ausleuchtung und das Z-Offset.

Zeichnen im Raster


Alle Vertices und alle Außen- und Unterteilungslinien werden innerhalb der Kästchen des Rasters gezeichnet.

Vertex im raster.jpg

Dies ist insofern logisch, als ein Vertex - ebenso wie ein Pixel - keine Ausdehnung besitzt und somit unteilbar ist. Dieser Überlegung folgend, beschreibt ein Vertex einen ganz bestimmten Punkt und nicht einen Zwischenraum im Koordinatensystem. Anders ausgedrückt: Ein Vertex liegt nicht etwa zwischen dem 46. und 47. Punkt des Koordinatensystems, sondern fällt exakt auf einen der beiden Punkte.

Zeichnen und Abspeichern in 1cm-Rastereinteilung


Das Zeichnen und vor allem das Abspeichern der Geometrie in den Konstruktionsdateien wird in 1 cm-Rastereinteilung abgetastet. Wenn eine feinere Teilung im Modell gewünscht wird, kann man ein mehrfaches der Einteilung verwenden und im Instanzen-Dialog um den entsprechenden Faktor wieder herunterskalieren (Beispiel: 10 Rasterpunkte auf der X-Achse sollen 1 cm darstellen, dann wird der Wert der X-Skalierung auf 0.1 gesetzt).

Texturabbildung in den Formaten DDS, PNG und TGA


Für das UV-Mapping , d.h. die Texturabbildung der Modelle, werden im Home-Nostruktor ab Version 8.0 ausschließlich die unkomprimierten Dateiformate DDS-, PNG- oder TGA angewendet. Dies resultiert aus der Tatsache, dass die Dateiformate DDS, PNG und TGA über einen integrierten Alphakanal verfügen, der das Ausblenden der Texel durch Alpha-Werte erheblich vereinfacht und die Fertigung von Texturen beschleunigt. Die Aktualisierungsfunktion [F5] arbeitet in Echtzeit, so dass Sie das 3D-Modell im Home-Nostruktor und die dazugehörige Textur in Ihrem Grafikbearbeitungsprogramm simultan begutachten und editieren können.

Texturierung für alle Vertices obligatorisch


Bedingt durch die konsequente Arbeitsweise der Pixelshader und die Notwendigkeit, eine möglichst hohe Rendering-Geschwindigkeit zu gewährleisten, müssen prinzipiell alle Vertices in den Drahtgittermodellen Modelle texturiert sein und damit eine gültige Belegung mit einer Texturen-ID aufweisen. Bliebe in einem Modell nur ein einziger Vertex untexturiert, würde dies unweigerlich zur Bildung eines weiteren RGD, d.h. eines zusätzlichen Konstruktes innerhalb des Objekts führen. Dies wiederum hätte zur Folge, dass das Rendern des Modells in der Rendering-Pipeline unterbrochen und ein neuer Befehlssatz - speziell für untexturierte Vertices - geladen werden müsste.
Um eine solche Situation zu vermeiden, überwacht der Home-Nostruktor die Belegung aller Vertex-Listen beim Modellexport. Vertices, die keine gültige Textur-ID aufweisen, weil diese vergessen oder übersehen wurden, werden automatisch mit einer Art "Notfall"-Textur überzogen - eine kleine weiße Textur, die auf die "nackten" Vertices aufgetragen wird, um den Renderingprozess nicht zu unterbrechen. Auch wenn dieser "Notfalleinsatz" immer greift, sind Sie besser beraten, wenn Sie das Textur-Mapping konsequent und sorgfältig kontrollieren.

Systemtextur(en)


Beim Export eines Modells als *.3dm-Kapsel werden mehrere Einzel-Texturen zu einer großen Systemtextur verbunden, weil das UV-Mapping die Texturen zusammen führt. Dies ist deshalb so vorteilhaft und bedeutsam, weil die Anzahl der Texturen ein Multiplikator der Rendering-Pipeline ist und deshalb möglichst klein gehalten werden sollte. Mit Rücksicht auf den Rechenaufwand und die Adressierung ist eine einzige Textur für das gesamte Modell die optimale und allzeit anzustrebende Lösung.
Um das Optimum einer solchen Systemtextur zu erreichen, darf sich eine Textur nicht mehr als 15 mal in den Dimensionen "u" und "v" wiederholen. Wird eine wiederholbare Textur öfter als 15 mal gekachelt, kann sie nicht in die sogenannte Systemtextur eingebunden, sondern muss ausgelagert, also "verbannt" werden, was den Renderingprozess wiederum verlangsamt. Beim Aufbau von Modellen, die viele Wiederholungen des Texturmotivs erfordern, sollte die Kachelung gleich in der einen Haupttextur berücksichtigt und angewendet werden. Damit wird die Textur in ihren Dimensionen zwar größer, doch im Blick auf die Rendering-Geschwindigkeit ist es vorteilhafter, nicht zwei oder noch mehr, sondern eine einzige, wenn auch größere Textur zu verwenden.

Smooth-Shading


Der Home-Nostruktor interpoliert standardmäßig die Farbwerte der Vertices und wendet ausschließlich Smooth-Shading an. Wenn Vertices unterschiedliche Farbwerte aufweisen (grundsätzlich wird ein einheitlicher Farbwert von R=200, G=200, B=200 empfohlen), müssen Sie das Drahtgitter, separiert nach den Farbwerten, auf mehrere KON-Dateien aufteilen, so dass jede KON-Datei nur eine separierte Farbe speichert. Eine homogene Farbe ist nur durch die Aufteilung der Konstruktion in mehrere Zeichnungen zu erzeugen, da bei gleichfarbigen Vertices kein sichtbarer Farbverlauf entstehen kann - aus der Interpolation "Rot" zu "Rot" kann nichts anderes als "Rot" entstehen.

Bestimmung der Materialfarbe aus der Farbe der Texel


Für eine korrekte und bei allen Modellen identische Ausleuchtung des Drahtgitters ist es notwendig, dass möglichst alle Vertices den gleichen Farbwert aufweisen, und zwar den RGB-Wert 200, 200, 200. Dieser relativ helle Grauton, der keine Buntheit, sondern nur einen Farbreiz vermittelt, eignet sich hervorragend für die Modulation durch das ambiente oder gerichtete Licht, da er abgedunkelt und vor allem auch aufgehellt werden kann.
Würde ein Vertex den RGB-Farbwert 255, 255, 255, d.h. Weiß aufweisen, könnte er durch das Licht nicht mehr aufgehellt werden, da reines Weiß nicht noch weißer werden kann. Sinngemäß trifft dieser Sachverhalt auch auf andere Vertex-Farben zu, beispielsweise auf die Farbe Blau. Geht man davon aus, dass diese Farbe aus den Werten: R=0, G=0, B=255 besteht, kann das Licht lediglich den roten und grünen Kanal aufhellen, da der Blau-Kanal seinen Endwert von 255 bereits erreicht hat. Damit würde sich die Ausleuchtung verändern, was auch zwangsläufig eine veränderte Farbwirkung zur Folge hätte.

Verzicht auf Untermodelle mit unbeweglichen Achsen


Der Export von 3D-Modellen, und zwar explizit von Immobilien, gleisbegleitenden Objekten und Landschaftselementen mit Achsen, die keinen Bewegungsbereich aufweisen, ist nicht sinnvoll und im Home-Nostruktor kaum möglich. Der Grund dafür liegt im erheblich erhöhten Renderingaufwand in EEP selbst.

22achsen.jpg

Die Anzahl der Achsenmodelle sind ein Multiplikator der Rendering-Pipeline, die Auswirkungen auf die Rechengeschwindigkeit sind fatal. Ein Modell muss die Pipeline so viele Male durchqueren, wie es Achsenmodelle besitzt - ganz gleich, ob diese sich bewegen oder nicht. Hat ein Bahnhof z.B. zweiundzwanzig Untermodelle auf unbeweglichen Achsen aufzuweisen, läuft das Modell mindestens zweiundzwanzig mal durch die Rendering-Pipeline, bis es diese fertig gerendert verlassen kann. Ein derartiges Konstruktionsprinzip lässt der Home-Nostruktor nicht kommentarlos zu. Versucht man ein so konstruiertes Modell zu exportieren, erscheint beim Export eine entsprechende Performance-Warnung.

Export knuffingen.jpg

Statt komplexe Modelle unter Verwendung von unbeweglichen Achsen aufzubauen, lässt sich - nicht weniger komfortabel - die Import-Funktion von Objekten in andere Objekte (z.B. das Basis-Objekt) nutzen.

Bestimmung der Achsenorientierung durch Eingaben


Lage und Orientierung der Achsen im Dialog der Achsenschachtelung werden über die Schaltfläche "Bereche Rotation" bestimmt. Damit bleibt Ihnen eine ständige Konfrontation mit der Eulerschen Winkel-Berechnung erspart.

Berechne rotation.jpg

Mit diesem Befehl öffnen Sie einen Dialog, in dem Sie den Grad der Rotation (z.B. 22,5°) für eine oder alle Transformationsachsen eingeben können. Damit wird das Winkelmaß automatisch in das Bogenmaß umgerechnet und dieses Ergebnis im jeweiligen Eingabefeld für die Orientierung übernommen.

Licht-System


Das Lichtsystem passt die Intensität des Lichtes dynamisch der Ausleuchtung der Anlage an. So können z.B. Signalbilder - unabhängig von der Tages- und Nachtzeit - auch von weitem abgelesen werden. Durch den Einsatz von Flares, d.h. Linsenlichtreflexen, lässt sich der erzielte Effekt noch steigern. Bei Rollmaterialien gibt es noch eine weitere Funktion: Die Lichter können so gesteuert werden, dass sie an der gekoppelten Seite von Rollmaterialien automatisch erlöschen, wie dies bei realen Zügen normalerweise der Fall ist.

Systemachsen


Um bestimmte Funktionsweisen von 3D-Modellen in EEP zu ermöglichen, wurden verschiedene Achsennamen vergeben, die exklusiv dafür reserviert sind und ausschließlich zu diesem Zweck, d.h. zum Aufruf der jeweiligen Funktion benutzt werden dürfen. Da die Funktion und deren Ansteuerung durch das ausführende Programm - Home-Nostruktor bzw. EEP - bereitgestellt wird, werden die reservierten Achsennamen auch "Systemachsen" genannt. Es gibt eine ganze Reihe neuer und exklusiv für Systemachsen reservierter Achsennamen wie z.B.: _Nonstop, _1, _2, _3, _4, _5, _Antrieb, _DriveDirF, _DriveDirR, _TimerS, _TimerM, _TimerH, _Velocity.

Schreibweise und Aufteilung von Parametern in INI-Einträgen


Es gibt eine strikte Trennung zwischen der internen, für die Funktionalität des Modells zuständigen System-INI-Datei und der externen, ausgelagerten Modell-INI-Datei. Die ausgelagerte INI-Datei ist für die Katalogisierung und Lokalisierung des Modells und die Benennung von Achsen zuständig. Sie ist auch nachträglich änderbar, weil sie mit dem gleichen Dateinnamen im selben Ressourcen-Ordner abgespeichert wird wie die .3dm-Datei, in der die interne INI gekapselt ist.

Effekt - Technologien


  • Reflexion - vertreten durch Glanz und Spiegelung
  • Linsenlichtreflexe - vertreten durch Flares
  • Randglühen - vertreten durch den Bloom-Effekt
  • Reliefzuordnung - vertreten durch das Parallax-Bumpmapping
  • Spekularität - vertreten durch Masken des specularen Lichts


Auch wenn Sie mit den Fachbegriffen nicht vertraut sind und die zugrunde liegenden physikalischen Effekte noch nicht einordnen können, sind die damit verfügbaren Gestaltungsmöglichkeiten für das Erscheinungsbild, hier explizit für die Materialoberfläche, mindestens ebenso wichtig wie ein gelungenes Drahtgitter oder eine fotorealistische Textur.

Kurztutorium


Nach dieser ersten Übersicht über einige wichtige Aspekte im Home-Nostruktor folgt nun eine praktische Übung, die veranschaulichen soll, was zuvor nur aufgelistet und theoretisch erläutert wurde. Dabei versteht es sich, dass wir nicht alle Aspekte gleichermaßen behandeln können und uns auf die grundlegenden Arbeitstechniken beschränken müssen. Im folgenden Tutorial lernen Sie, wie Sie

  • einzelne Konstruktionsinhalte und deren Instanzen zu Gruppen zusammenfassen,
  • Normalvektoren anzeigen und deren Ausrichtung beeinflussen,
  • eine Oberfläche mit ganz spezifischen Materialeigenschaften ausstatten.


Kurztutorium Stadthaus

Navigation

↑ Hauptseite

← 1.2 Was ist der Home-Nostruktor?

1.3 Schnelleinstieg (für Fortgeschrittene)

2.1 Was ist ein Projekt? →