Level of Detail (LOD)

  • Level of Detail beschreibt eine Technik um Modellvarianten verschiedener Detailstufen je nach Entfernung zur Kamera ein- oder auszublenden.
    Für die Richtigstellung:

    Um Entfernungen geht es bis zur Trainz-Build 4.5 nicht wirklich. Tatsächlich werden Detailstufen durch die relative Größe des Modells auf dem Monitor berechnet.


    Trainz unterscheidet zwischen zwei Varianten:
    - LOD per config.txt
    - LOD per *.lm.txt


    Wo bei ersterer den Meshes im mesh-table eine LOD-Stufe zugewiesen wird und die restlichen Berechnungen als Standardwerte vorliegen, erlaubt eine LM-Datei genaue Werte für die LOD-umschaltung.


    1 Erklärung aus dem Trainz-Development-Diary:

    Auf dem folgenden Bild sind in der 2D-Ansicht in der oberen rechten Ecke Meshes erkennbar, die immer einfacher werden. Die 3D-Ansicht zeigt die Größe in der das Objekt bei der angegebenen Distanz dargestellt wird.


    lod_transitions_1b.jpg


    Dies zeigt, dass der kleine Punkt in der LOD-Stufe 4 ab einem Kilometer Entfernung und mehr keine hoch aufgelöste 40.000 Polygon Kugel ist, sondern tatsächlich ein relativ einfaches acht-seitiges Objekt. Wie das obige Bild gut illustriert ist es schwer zu erkennen, dass man nicht das originale Objekt sieht, wenn sich die Kamera entfernt, sondern eine vielfach vereinfachte LOD-Version davon.

    Der offensichtliche Vorteil von LOD ist natürlich, dass die Computer-Hardware nicht dazu gezwungen wird Millionen von Polygonen zu rendern, die im Grunde genommen nicht auf dem Bildschirm erkennbar sind.

    2 LOD-Entfernung steuern

    Da sich die Qualität und die Genauigkeit der Inhalte im Laufe der Zeit verbessern und Objekte im Spiel immer realistischer erscheinen,

    wird es immer wichtiger, sicherzustellen, dass die Detailgenauigkeit (LOD) sorgfältig verwaltet wird.


    Stellen Sie sich die Auswirkungen eines sehr hoch aufgelösten Objektes auf die Perfomance vor, dass nicht an Komplexität verliert,

    wenn es nur noch ein paar Pixel auf dem Bildschirm einnimmt.


    Bis zur Trainz-Build 4.5 entscheidet die Software, wann LOD reduziert werden soll.

    In der nächsten Version von Trainz bieten wir den Content Erstellern die Möglichkeit einzustellen und zu steuern, ab welcher Entfernung die einzelnen LOD-Stufen aktiviert werden.

    Dies bietet mehr Flexibilität, um eine effektive Optimierung der Szene zu ermöglichen.


    lod_transitions_0.jpg


    Für die Trainz-Build-Version 4.6 wird ein neuer Eintrag namens mesh-table-lod-transition-distances eingeführt, der die Entfernungen steuert, bei denen die LOD-Übergänge stattfinden.

    Die Verwendung diese Features löst die bisherigen Einträge mesh-lod-distance und maximum-lod-distance ab.

    Der Eintrag mesh-table-lod-transition-distances ist optional und enthält bei Verwendung eine Liste von Gleitkommazahlen, die die Endentfernung der einzelnen LOD-Meshes repräsentieren.


    Wird dieser Eintrag nicht angegeben wird kein Mesh-Table-LOD verwendet. Diese Einstellung kann für wenig detaillierte Scenery-Objekte oder bei ausschließlich auf LM-LOD basierenden Schienenfahrzeugen oder Autos verwendet werden.


    2.1 Beispiel

    Code: config.txt
    mesh-table-lod-transition-distances 10.0, 30.0, 150.0, 1000.0

    Diese Beispiel definiert 5 Mesh-Table-LOD-Level.

    Das Erste (LOD 0) reicht von 0.0m bis 10.0m

    Das Zweite (LOD 1) reicht von 10.0m bis 30.0m

    Das Dritte (LOD 2) reicht von 30.0m bis 150.0m

    Das Vierte (LOD 3) reicht von 150.0m bis 1000.0m

    Das Fünfte (LOD 4) reicht von 1000.0m aufwärts