Objektdatei (.sco)

Aus OMSIWiki
Version vom 28. März 2016, 14:04 Uhr von Rumpelhans 104 (Diskussion | Beiträge) (Höhenmesh und Terrainhole hinzugefügt)
Wechseln zu:Navigation, Suche

In diesem Artikel geht es um Objektdateien (.sco), wie sie aufgebaut sind, welche Schlüsselwörter es gibt und was diese bewirken.

Ordnerstruktur

SCO-Dateien sind Dateien, die Objekte konfiguieren. Sie liegen in einem Unterordner von Sceneryobjects. Neben den SCO-Dateien gibt es drei mögliche Unterordner:

  • Im Ordner model liegen die 3D-Objektdateien. Sie können im DirectX-Format (.x) oder im omsi-eigenen Format (.o3d) vorliegen.
  • Im Ordner script liegen Scriptdateien. Scripte sind für Funktionen wichtig, die mit einer reinen .sco-Datei nicht realisiert werden können.
  • Im Ordner texture liegen die Texturen im Bitmap-Format (.bmp), im JPEG-Format (.jpg) oder im DDS-Format (.dds).

Einträge

Im Folgenden werden die möglichen Einträge aufgelistet und erklärt

Grundlegendes

Schlüsselwort Erklärung Besonderheiten Beispiel
[friendlyname] Name des Objekts, welcher im Omsi Editor angezeigt wird. Pflicht [friendlyname]

Parkbank

[groups] Ordner und Unterordner, in denen das Objekt im Omsi Editor angezeigt wird Die Anzahl wird vorangestellt [groups]

2

Meine Objekte

Ausstattung

Einstellungen

Schlüsselwort Erklärung Besonderheiten Beispiel
[LightMapMapping] Die Lightmap der Kachel hat Einfluss auf Texturen, beleuchtet zum Beispiel das Objekt.
[rendertype]

presurface

surface

on_surface

1

2

3

4

Bestimmt wann das Objekt gerendert wird.

Vor dem Terrain (dies ist z.B. hilfreich um Löcher in den Boden zu schneiden)

Mit dem Terrain (z.B. die Straßen)

Nach dem Terrain (z.B. Richtungspfeile)

Vor "normalen" Objekten

Standardwert

Nach "normalen" Objekten

Nach Straßenfahrzeugen und Fußgängern (sinnvoll bei Objekten mit viel Glas und Transparenz)

[rendertype]

surface

[absheight] Die Höhe des Objekts wird absolut angegeben, nicht relativ zum Boden. Sinnvoll bei Kreuzungen.
[onlyeditor] Das Objekt ist nur im Editor sichtbar, im Hauptspiel bleiben aber Pfade erhalten.
[shadow] Sorgt dafür, dass das Objekt einen Schatten erzeugt, der mit dem Stand der Sonne wandert.
[petrolstation] Sorgt dafür, dass in der Umgebung des Objekts der Spielerbus getankt und gewaschen werden kann.

Kollision

Schlüsselwort Erklärung Besonderheiten Beispiel
[nocollision] Der Spieler kollidiert nicht mit dem Objekt. schließt andere Kollisionseinträge aus
[fixed] Das Objekt ist fest und kann durch eine Kollision nicht verschoben werden. optional
[surface] Die Kollision erfolgt als Terrain (dies ist bei Kreuzungen nötig, damit der Spieler darauf fahren kann). in Kombination mit [collision_mesh]
[collision_mesh] Bestimmt das Mesh der Kollision. Das Kollisionsmesh muss nicht ein anderes sein als das sichtbare. [collision_mesh]

Poller.o3d

[boundingbox] s. Boundingbox

Sichtbares Objekt

Schlüsselwort Erklärung Besonderheiten Beispiel
[mesh] Fügt eine Objektdatei hinzu. Mehrere Einträge möglich. Die Reihenfolge entspricht der Renderreihenfolge. [mesh]

Bank.o3d

[matl] Definiert die angegebene Textur als Material. Die folgenden Matl-Einträge bestimmen die Eigenschaften.


Definiert das Submesh der Textur

Bezieht sich auf die Textur im Objekt des vorangegangenen Mesh-Eintrags.



[matl]

Metall.dds

0

[matl_alpha]

0

1

2

Bestimmt, ob die Textur eine Transparenz (über den Alpha-Kanal der Textur) hat:

Keine Transparenz

Jegliche Transparenz wird als Volltransparenz interpretiert

Es gibt Teiltransparenzen.

Bezieht sich auf die Textur des vorangegangenen [matl]-Eintrags [matl_alpha]

2

[matl_envmap]

Textur

0-1

Definiert eine Reflexionstextur und die Stärke der Reflexion

Die Textur, üblicherweise eine envmap.bmp

Die Stärke zwischen null und eins

[matl_envmap]

envmap.bmp

0.4

[complexity]

0

1

2

3

Definiert die Sichtbarkeitsebene des Objekts über die Einstellungen

Sehr Wichtiges Objekt - Kreuzungen, Häuser, Laternen, Haltestellen, Verkehrszeichen

Wichtiges Objekt - Haltestellenhäuschen, kleine Gebäude

Normales Objekt - Straßenschild, kleinste Gebäude, Mülleimer, Telefonzellen

Detailobjekt - Parkbänke, Poller

[complexity]

2

[visible]

Variable

1

Bestimmt, ob das Objekt sichtbar ist

Variable aus einer Varlist, die abgeglichen werden soll

Wert der Variable, bei der das Objekt sichtbar ist

[visible]

sommerhalbjahr

1

[NightMapMode]

0

1

2

3

4

Bestimmt, wann die Nachttextur erscheint (Textur im Unterordner night)

wie Straßenbeleuchtung

Gebäude mit durchgehender Beleuchtung

Wohngebäude (nicht zwischen ungefähr 23 und 6 Uhr)

Gewerbegebäude (nicht zwischen ungefähr 18 und 7 Uhr)

Schule (nicht zwischen ungefähr 15 und 7 Uhr)

Varianten 2-4 mit Variation [NightMapMode]

0

[crossing_heightdeformation] Verbiegt das Objekt. Die Basis dafür ist eine Plane, die gebogen ist. (Pfade werden mitgebogen) Nur OMSI 2 [crossing_heightdeformation]

Kreuzung_base.o3d

[terrainhole] Schneidet das Terrain anhand eines Meshs aus. Auch diesmal ist die Basis eine Plane, dessen Enden bestimmen, wo das Terrain anliegt. Nur OMSI 2

Es wird vom Editor automatisch eine .o3d.hole-Datei erstellt.

[terrainhole]

Kreuzung_hole.o3d

Weiterführende Informationen über die Einträge finden sich im Inoffiziellen OMSI SDK 2.