Beiträge von DerGrafikfehler

Willkommen in der OMSI-WebDisk!
Als Gast kannst du nur Inhalte in deiner ausgewählten Sprache sehen. Registrierte Nutzer können die Sichtbarkeit anderer Sprachen in ihrem Kontrollzentrum aktivieren, weitere Infos hier.
Alle Themen sind in den Foren mit einer Sprachflagge gekennzeichnet: = Englisch [EN], = Deutsch [DE], = Französisch [FR]. Wenn du die angegebene Sprache nicht beherrschst, schreibe auf Englisch!

    Die Situation wird noch verrückter. Habe jetzt noch etwas herum gespielt und folgendes erzielt: Die zweite Scripttextur wird vereinzelt beschrieben:

    Ergebnis:



    Sobald das Makro in oder unter WriteTicketName ausgeführt wird, wird die falsche Scripttextur verwendet. In diesem Makro wird aber nichts mit dem Scripttextur-Index gemacht...

    Guten Abend,


    ich stehe aktuell an den Grenzen des Möglichen an.


    Aktuell arbeite ich an einem EvendPC, der für das Display eine Scripttextur verwendet (macht den Einbau in Busse wesentlich einfacher). Da die Darstellung mittels [useScriptTexture] aus größerer Distanz nicht sonderlich gut is, versuche ich gerade, die weißen und schwarzen Textfelder auf zwei separate Scripttexturen aufzutrennen. Das sollte eigentlich auch nicht so schwer sein, bei schwarzer Schrift einfach auf die Textur mit Index 2 schreiben, bei weißer Schrift auf Textur-Index 3. Soweit auch programmiert, Ergebnis: Beide Textfelder weiterhin auf einer Scripttextur. Wenn ich die Scripttextur-Indizes auskreuze, bekomme ich das gleiche Ergebnis, aber auf der jeweils anderen Scripttextur. Testweise auch ein komplett neues Makro zum Beschreiben der Scripttextur angelegt - ohne Erfolg.


    Mit Debug-Variablen habe ich den tatsächlich im Script eingelesenen Index für die richtige Scripttextur kontrolliert, ob der tatsächlich ankommt und ob das richtige Makro ausgeführt wird, beides korrekt:

    Code: lastsn.osn
    EvendPC_debug
    12345.0004470759
    EvendPC_debug2
    2.99999995292025
    Code
    [const]
    EvendPC_Scripttex_Index
    2
    
    [const]
    EvendPC_ZweiteTex
    3

    Anmerkung: beide Variablen werden nur in dem Makro verwendet und kommen im Script sonst nirgendwo vor.


    Auf der Scripttextur schaut das ganze dann aber so aus (rot hinterlegt für bessere Erkennbarkeit):



    Der Text (die Ticket-Namen) wird auf die Scripttextur mit Index 2 geschrieben, obwohl Scripttextur-Index 3 angegeben ist.


    Hat jemand eine Idee, was hier schiefläuft? Habe schon mehrmals das Script kontrolliert, Omsi neu gestartet, Rechner neu gestartet, keine Besserung.

    Eine Bitmap ersetzt alles, was sonst angezeigt werden würde. Auch die Linie. Umgekehrt heißt das aber auch, dass die Linie auf der Bitmap an allen Stellen vorhanden sein muss, damit sie angezeigt wird.

    Gilt das dann auch für Aesys?

    Ja. Der Verzeichnis-Name habe ich einfach nie geändert.

    Hmm, seltsam, im Test hat er dann einfach gar keine Liniennummern angezeigt, egal wo. Müsste ich noch mal in Ruhe testen.

    Vorne wird nichts angezeigt, auf der Linienanzeige aber der String 22.

    Und genau die Funktion kannst du dir eben hier zunutze machen. Die Linie wird nur vorne nicht angezeigt, wenn im String 22 was steht. Sonst wird sie korrekt angezeigt.


    Da bräuchte ich dann ja auch den entsprechenden Font als Truetype, denn mit Arial oder ähnlichem wird das sicher nix;-D Wobei.. Pixel für Pixel "abmalen" geht ja auch vielleicht für die paar Ziele.

    Ziel schildern, Strg+S drücken, dann im Map-Verzeichnis die laststn.osn_0_0.dds öffnen, Hintergrund schwarz und das Ziel bearbeiten. Dann als .bmp mit 24 Bit im Ordner Vehicles\Anzeigen\Mobitec_Wien speichern und in der Hofdatei im String 7 eintragen.

    Versteh ich die Anleitung richtig dass man bei zweizeiligen Zielen kein Symbol rechts einblenden kann? Also über beide Zeilen, ähnlich wie im Falle der Symbole bei Linie.

    Ziel-Sonderzeichen so

    einbinden geht nur über ein Bitmap-Ziel.

    Sonderzeichen für jede Zeile einzeln, so:

    geht direkt über die Hofdatei.

    Interessant ist auch die Sache eines der Liniensymbole einem Ziel über String 22 zuzuordnen. Wollte das dann ausnutzen um einem Ziel die Linie zu löschen. Das hat mit einem Leerzeichen auch geklappt, allerdings war dann doch der Text "Betriebsfahrt" leicht nach rechts verschoben. Das ist wieder etwas unschön. Gibts da einen besseren Trick? Klar, man könnte einen ein Pixel breiten Buchstaben im Font reinmachen, aber vielleicht gehts ja auch einfacher?

    Ja. Leerzeichen lassen und diese Option aktivieren:

    Puhh die 4 GB Arbeitsspeicher könnte problematisch werden.

    "Kann" ist sehr vorsichtig ausgedrückt. Windows 10 rennt mit 4GB RAM out of the box mittlerweile eher mäßig, an irgendwas auch nur ansatzweise RAM-lastiges ist da nicht zu denken. Selbiges gilt für den Dual Core i5 der 3. Generation. An sich nicht schlecht, aber auch schon über elf Jahre alt und damit leistungsmäßig inzwischen ziemlich eingeschränkt.


    Dazu kommt der dadurch begrenzte Support-Zyklus. Windows 10 geht noch, 11 nicht mehr und mit 10 ist in eineinhalb Jahren Schluss.


    Kurz: vor 6 Jahren sicher keine schlechte Option, heute allgemein nicht unbedingt eine gute Wahl.

    Auf den ersten drei Screenshots sind alle Setvars auf 0, also Mobitec mit 24px Höhe an allen Stellen.


    In der main.osc musst du einfach für jede Stelle die entsprechende Setvar auf den entsprechenden Wert setzen, idealerweise unter {frame}.

    <Wert> (S.L.Setvar)


    Der Fehler im letzten Screenshot entsteht, wenn der Font-Index 0 ist. Wie es dazu kommt... keine Ahnung. Es gibt bestimmte Punkte in der Script-Engine, wo Omsi nach dem Laden ein paar Frames braucht, bis wirklich das am Fahrzeug ankommt, was auch ankommen soll.


    Ich muss an der Stelle aber einen Schlussstrich ziehen. Eigentlich möchte ich hier nur für jene Dinge Support bieten, die auch in meinen Downloads enthalten sind. Davon ist dieser Einbau in den Mainzer LC inzwischen ziemlich weit entfernt.

    Nicht korrekt eingestellte Scripttexturen sorgen u.a. für Zugriffsverletzungen, ja.


    Beim Crossway-DLC kommt aber auch dazu, dass die Ordnerstruktur und Dateibenennung ein absoluter Albtraum ist. Da ist alles irgendwie kryptisch benannt, deswegen ist es auch sehr schwer zu sagen, was wo dazu gehört.


    Nur die [matl_transmap] Einträge löschen macht übrigens genau gar nichts. Die dazugehörigen [mesh] Einträge müssen natürlich komplett entfernt werden.