Scheiben in OMSI-Objekt einbauen

Das Forum befindet sich im reduzierten Betrieb. Die Addon- und Supportforen bleiben weiterhin verfügbar.
Bitte beachte, dass OMSI nicht mehr weiterentwickelt wird. Ein Teil der Entwickler widmet sich inzwischen der Entwicklung eines neuen Simulators. Weitere Informationen zum LOTUS-Simulator findest Du hier.
  • Hallo,


    ich habe jetzt überall geschaut und nichts gefunden und aus den Erklärungen im Forum bin ich bisher auch nicht schlau geworden...
    Also, meine Frage:
    Wie schaffe ich das, für OMSI eine Scheibe in ein Objekt einzubauen, die dann spiegelt und durchsichtig (klar was sonst?) ist?
    Am besten wäre eine Erklärung Schritt für Schritt und mit den entsprechenden Einträgen in der sco-Datei.
    Ich benutze Blender 2.49.
    Über jede Hilfe bin ich SEHR dankbar!!


    Liebe Grüße
    Jonathan

    :)
  • Das ist komplizierter als du vielleicht denken magst

    ;)


    Du brauchst: Eine Textur mit Alpha-Kanal im tga oder dds Format und dein Objekt.
    Die weißen Stellen im Alphachannel sind die undurchsichtigen, je dunkler die Flächen sind, desto durchsichtiger wird es (schwarz = komplett) an diesen Stellen.


    Jetzt in Blender alles ganz normal aufs Objekt mappen. Du kannst die Transparenz durch diverse Einstellungen im Material und der Textur auch in Blender erreichen, das braucht man aber für Omsi gar nicht. Es darf hier also undurchsichtig aussehen.
    Ganz normal exportieren, in o3d konvertieren und wie jedes andere Objekt dann in deine SceneryObjects einfügen.
    Dann kommen ein paar Zusätze in der sco-Datei:
    Für jede durchsichtige Fläche brauchst du 1x den Eintrag


    [matl]
    deine_textur.tga
    0
    [matl_alpha]
    1


    Hast du eine zweite Scheibe (eigenes Objekt in Blender) brauchst du (glaube ich) noch mal den selben Eintrag mit fortlaufender Nummer im matl Tag, also dann insgesamt so:
    [matl]
    deine_textur.tga
    0
    [matl_alpha]
    1
    [matl]
    deine_textur.tga
    1
    [matl_alpha]
    1


    Der Wert für [matl_alpha] kann 1 oder 2 sein. 1 Schneidet scharf aus, 2 erzeugt einen minimalen Verlauf der Transparenz (glaube ich)


    Komm wieder, wenn du Probleme mit weißen Rändern hast

    ;)


    Edit: Die Spiegelung habe ich ganz vergessen. Das macht man mit einer Enviroment-Map. Wie das geht, kann ich dann später erklären, wenn du es bis hier hin geschafft hast.

  • Hallo folti,


    vielen, vielen Dank für deine Hilfe! Ich habe ein Testobjekt gebaut und nach deiner Anleitung Transparenzen hinzugefügt! Die 1 und die 2 nach [matl_alpha] besagen ob das Objekt halbtransparent (2) oder entweder ganz oder gar nicht tranzparent ist (1) (Versuch macht kluch !

    :D

    )


    Jetzt hab ich aber auch minimal weiße Ränder...
    Ich würde mich sehr freuen wenn du (oder ein anderer?) mir erklären könntest wie ich die wegbekomme und wie das mit der Enviroment-Map (?) funktioniert


    Liebe Grüße und Danke
    Jonathan

  • Jetzt hab ich aber auch minimal weiße Ränder...
    Ich würde mich sehr freuen wenn du (oder ein anderer?) mir erklären könntest wie ich die wegbekomme und wie das mit der Enviroment-Map (?) funktioniert

    Jaja... das böse Problem mit den weißen Rändern. Ich kann hier nur Hilfe für Photoshop-User geben


    Zuerst mal solltest du deine Textur immer in Originalgröße editieren. Also nicht auf ner 512² Textur malen, die du dann später als 256²er exportierst, denn bei dem Skalieren entstehen unsaubere Ränder. Wenn du die Bildgröße änderst, dann immer mit der Option "Pixelwiederholung (harte Kanten behalten)".
    Außerdem sollte man immer darauf achten, dass "glätten" (bei Photoshop) ausgestellt ist, sonst erhälst du halbdurchsichtige Pixel (was wahrscheinlich dein Problem ist), die diesen Rand erzeugen. Außerdem kann es helfen, die Randpixel deines sichtbaren Objektes auf einer neuen Ebene im Hintergrund zu kopieren und dann zu vergrößern. Wenn dein Objekt größtenteils einfarbig ist, kannst du auch einfach eine Hintergrundebene mit der Durchschnittsfarbe einfügen, die Alpha-Map macht sowiesie die ganze Arbeit.
    Unbedingt darauf achten, dass die Kanten der schwarz-weiß-Übergänge im Alpha-Kanal scharf ausgeschnitten werden (kein grau)!
    Falls das alles nicht hilft, kann man gut und gerne danach googeln, da gibts auch ein paar Threads wegen anderer Spiele zu.


    Jetzt zur env-map.
    Das ist quasi eine Spiegelung mit einer Textur, die man selbst bestimmen kann. Maximal gespiegelt wird alles das was auf der Alpha-map durchsichtig ist.
    Zur Erzeugung des Effektes muss statt dem matl_alpha Befehl folgendes in die .sco-Datei schreiben:

    Code
    1. [matl_envmap]
    2. envmap.bmp
    3. 0
    4. [matl_transmap]


    Die eigentliche Enviroment Map kannst du natürlich deinen Bedürfnissen anpassen, man kann aber getrost zum Testen erst mal die "Offizielle" nehmen.
    Guck dir am besten mal die Objekte von "Static_Vehicles_RUE", da gibt es durch die Alpha-Map eine leichte Reflexion auf dem ganzen Objekt (Statischer-Bus), der bei den Scheiben durch einen höheren Alpha-Wert noch verstärkt wird. Generell gilt: je durchsichtiger, desto mehr Spiegelung.
    Ob man mit der Zahl unter dem Dateinamen noch was verändern kann, oder das nur die Nummerierung ist, kann ich dir jetzt gerade nicht sagen. Einfach mal ausprobieren

    :)


    Hoffe das hilft dir und vielleicht anderen.


    Edit: Man kann natürlich auch Transparenz und Enviroment-Mapping kombinieren (beide Befehle in die .sco-Datei), um zB den gleichen Effekt wie bei den Scheiben der fahrbaren Bussen zu erzielen

    ;)
  • Ich weiß der Thread ist schon etwas älter, ich hoffe ihr könnt mir trotzdem helfen.

    ^^


    Ich möchte einem Objekt eine Reflexion hinzufügen, jedoch ist im Spiel nichts zu sehen.
    In die .sco habe ich folgendes geschrieben:


  • tom, schau einfach in das Haltestellenhäuschen von mir, da sollte alles verständlich drin stehn! wichtig ist (glaue ich) das du das Objekt einzeln exportieren musst, und dann in einer SCO zusammenfügst. anders gings bei mir nicht.