Splines erstellen

  • Splines sind jene linienförmige Objekte, die im Map-Editor in beliebiger Länge, gebogen oder gerade, horizontal oder mit Gradient und/oder Überhöhung "verlegt" werden können. Dieser Artikel beschreibt, wie neue Spline-Typen im ContentTool erstellt werden können.

    In diesem Artikel wird vorausgesetzt, dass allgemein bekannt ist, wie normale Szenerieobjekte erstellt werden. Als Anleitung hierfür dient am Besten der Artikel "Tutorial: Gebäude erstellen".

    1 Aufbau des 3D-Objektes

    Die Grundlage für die spätere Spline stellt ein normales 3D-Objekt dar. Beim Verlegen der Spline passt der Map-Editor dieses Objekt an: Er kann es verbiegen, beschneiden oder kopieren und aneinander kleben.


    Das 3D-Objekt wird ausgehend vom Punkt 0/0 in positiver y-Richtung konstruiert und könnte z.B. so aussehen:



    Zu beachten ist, dass der Map-Editor in Kurven selbst in der Lage ist, mit zusätzlich eingefügten Eckpunkten eine saubere Rundung zu erzeugen. Es ist also nicht nötig, eine bestimmte Anzahl von Unterteilungen oder Punkten zu verbauen.

    2 Anlegen und Import

    Wir starten nun das Content-Tool und wählen "Objekte & Fahrzeuge", dann "Neues Objekt erstellen" und dann eine der rechten Objekt-Klassen. Die rechten sind alles Spline-Klassen, die linken sind alles "normale" Objekt-Klassen. Während allerdings die unteren Klassen besondere Eigenschaften haben, die hier kein Thema sein sollen und weil wir ja nur einen simplen Radweg importieren wollen, wählen wir "Oberflächen-Spline" aus.


    Im Gegensatz hierzu ist eine "Standard-Spline" etwas "Aufragendes" und nicht zum Boden gehörendes, wie z.B. ein Zaun. Eine "Markierungs-Spline" dagegen ist z.B. eine Fahrbahnmarkierung, die zwar nicht in den Boden mit "eingegossen" wird, wohl aber dem Boden folgt und auch thematisch zu ihm passt.


    Die Objektkategorie ist für unseren Radweg "CAT 1". Ein Zaun wäre aber eher "CAT 3".


    Die Gattungen werden wie üblich ausgewählt. Hier empfiehlt sich: "Straße und Verkehr" und darin "Straßen- & Gehwegselemente".


    Das Object & Vehicle Tool startet nun wie üblich. Wir importieren nun das Mesh, wobei auch dies wie üblich erfolgt. Es zeigt sich jedoch eine andere Darstellung als sonst:



    Das Tool hat das 3D-Objekt bereits interpretiert und zeigt eine Vorschau an, wie die Spline im Map-Editor aussehen wird. Grundsätzlich ist es nun möglich, die Spline so wie bekannt zu speichern und zu exportieren, z.B. mit dem "Go!"-Button.

    3 Spline-Eigenschaften bearbeiten

    Es gibt allerdings ein paar Eigenheiten und besondere Einstellungen, die hier noch vorgestellt werden sollen:

    3.1 Meshs und Materialien

    Grundsätzlich können die Materialien und Meshs genauso bearbeitet werden, wie auch bei normalen Objekten. Das einzige, was nicht geht, ist die Mesh-Auswahl im 3D-Fenster. Stattdessen kann aber, wie sonst auch, die Auswahlmöglichkeit in der Mesh-Liste rechts genutzt werden.


    Außerdem gibt es diverse Mesh-Einstellungen, die bei Splines keine Auswirkungen haben, z.B. die Sichtbarkeitsbedingungen, Sichtbarkeits-Variable, Maus-Interaktionen, Vertex-Ambient-Occlusion usw.

    3.2 Spline-Vorschau

    Links ganz unten gibt es den Abschnitt "Spline". Hierin befindet sich der Button "Spline-Vorschau", der zu einem Dialogfeld führt, in dem die Eigenschaften der Spline-Vorschau eingestellt werden können. Diese entsprechen den Einstellungen beim Bau einer Spline im Map-Editor.


    Beispielsweise können wir den Radius und die Länger verkleinern, hier auf R = 10 m und L = 15 m:



    3.3 Spezifische Spline-Eigenschaften

    Es gibt ein paar besondere Eigenschaften innerhalb der "Objekteinstellungen" (Abschnitt "Allgemeine Einstellungen" links).


    Zu beachten ist, dass es momentan nötig ist, dass man nach Änderungen in den Objekteinstellungen einmal auf den zuvor vorgestellten Button "Spline-Vorschau" klicken und das Dialogfeld mit OK bestätigen muss.

    3.3.1 Länge einer Einheit

    Das Content-Tool misst beim Import aus, wie lang das 3D-Objekt ist und gibt diesen Wert hier ein, in unserem Fall liegt er bei 5 m. Hieraus ergibt sich, wie oft LOTUS das Element wiederholen muss und in welchem Abstand diese Kopien angeordnet werden müssen. Testweise könnte man den Wert auf 6 m einstellen:


    3.3.2 Allowed SplitCount

    Für diesen Parameter muss ich ein wenig ausholen und eine andere Textur bemühen:



    Der Wert für diesen Parameter kann wahlweise -1, 0 oder eine positive Zahl sein. Dementsprechend verhält sich die Spline wie folgt:


    -1: Das Originalobjekt wird solange gestreckt, bis es die ganze Strecke überspannt:



    0: Es wird weder gestreckt noch gestaucht, sondern einfach rigeros nach Längen-Vorgabe "abgeschnitten", egal wo:



    1: Es wird immer so gestreckt oder gestaucht, dass immer genau auf der Grenze zwischen zwei Segment-Kopien abgeschnitten wird:



    2: Es darf wahlweise zwischen zwei Segment-Kopien oder genau auf der Hälfte des Segments geschnitten werden:



    3, 4, 5...: Dementsprechend darf das Segment nach einem oder zwei Dritteln, einem, zwei oder drei Vierteln usw. geschnitten werden.


    Beispielsweise darf bei 4 in unserem Fall immer an der Grenze zwischen zwei verschiedenen Farben geschnitten werden:


    3.4 Spezielle Materialeigenschaften

    Spline-Materialien verfügen über eine zusätzliche Eigenschaft "Terrain-Schneide-Variante". Diese entscheidet darüber, wie die Meshs einer Oberflächen- oder Markierungsspline, die dieses Material verwenden, beim Schneiden mit den restlichen Splines und Polygonen des Terrains interagieren:

    • Wie im MapEditor konfiguriert: Standardeinstellung – ob die Meshs, die dieses Material verwenden, das Terrain schneiden, wird im Einzelfall direkt von der Konfiguration der Spline im MapEditor gesteuert
    • Erzwingt das Schneiden: Die Meshs, die dieses Material verwenden, schneiden immer das Terrain, unabhängig von den Eigenschaften der Spline im MapEditor.
    • Keinesfalls schneiden: Die Meshs, die dieses Material verwenden, schneiden niemals irgendetwas
    • Nur schneiden, das Mesh bleibt unsichtbar: Die Meshs, die dieses Material verwenden, schneiden zwar "wie üblich", werden selbst aber nicht dargestellt
    • Schneidet auch die Markierungen, Mesh bleibt unsichtbar: (Nur für Oberflächen-Splines) Wie die vorherige Einstellung, zusätzlich schneiden die Meshs aber auch alle Splines und Polygone auf der Markierungsebene! Auf diese Weise können z.B. Rillengleise mit einem zusätzlichen Schneidemesh versehen werden, welches dafür sorgt, dass keine Straßenmarkierungen o.Ä. über die Rillenschiene verlaufen können.

    4 Optimierung

    4.1 Verwendung eines separaten Schneidemeshs

    Wichtig: Handelt es sich um eine Oberflächen-Spline, dann ist unbedingt zu prüfen, ob ggf. ein deutlich einfacheres Schneidemesh erstellt werden kann! Der Schneidealgorithmus des MapEditors ist einerseits umso schneller und andererseits umso stabiler, je weniger Polygone verrechnet werden müssen. Insbesondere senkrechte Polygone oder gar "Überhänge" können ein Problem darstellen!


    Das klassische Beispiel ist ein Bordstein:



    Hierfür lässt sich ein alternatives Schnittmesh anlegen, welches deutlich einfacher, schneller und sicherer verarbeitet werden kann:




    Dieses wird als separates Objekt erstellt und importiert. Da es später unsichtbar wird, sind das Mapping und die Textur egal (es sollte aber nur eine sein, da es sonst im Object & Vehicle Tool aufgeteilt wird). Zusammen sieht das dann so aus:



    Dem Schneidemesh muss ein separates Material zugewiesen sein (ggf. durch Anfertigung einer Kopie).


    Die Materialien der "normalen" Meshs werden so umkonfiguriert, dass sie nicht mehr schneiden, d.h. die Materialeigenschaft "Terrain-Schneide-Variante" wird auf "Keinesfalls schneiden" eingestellt. Beim Material des Schneidemeshs dagegen wird "Terrain-Schneide-Variante" auf "Nur schneiden, das Mesh bleibt unsichtbar" eingestellt. Damit das Mesh auch im Vorschaubild unsichtbar wird, kann zusätzlich noch "Min. Alpha" auf einen Wert größer eins (z.B. zwei) eingestellt werden.