Ist es möglich, die eigene Position auszulesen?

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!
  • Hallo,


    ich suche nach einer Möglichkeit, die eigene Position auszulesen:

    Wenn ich z.B. einen Bus habe, der 10 Meter lang ist, bräuchte ich etwas, wie: if my position größer als z-position 4.2 than dies, else das.

    Das liesse sich nutzen um abzufragen, ob meine Position vorne auf dem Fahresitz ist (größer +4.2) oder wo anders im Bus.


    Grüße, Lars

  • Nexuxscraft Ich glaube, der Autor möchte die Position während des Spielens im Scirpt abfragen. ;)

  • Das liesse sich nutzen um abzufragen, ob meine Position vorne auf dem Fahresitz ist (größer +4.2) oder wo anders im Bus.

    Was hast du denn genau vor? Vielleicht gibt es noch eine andere Möglichkeit...

  • Das liesse sich nutzen um abzufragen, ob meine Position vorne auf dem Fahresitz ist (größer +4.2) oder wo anders im Bus.

    Was hast du denn genau vor? Vielleicht gibt es noch eine andere Möglichkeit...


    Ziel der Überlegung ist folgendes:

    Ab und zu fahre ich nicht selber Omsi, sondern setze mich quasi als Passagier auf die Rückbank und lasse mich durch die Maps kutschieren.

    Dabei sind die FPS bei der Aussenansicht (F3) immer besser als bei der Innenansicht (F2).

    Innerhalb der Innenansicht gibt es unterschiedliche FPS, je nachdem wo ich sitze, vermutlich bedingt durch mehr oder weniger benutzte Spiegel und der Größe der Fensterfläche, hinter der die Landschaft dargestellt wird.


    "Sitze" ich direkt hinter der vorderen Tür, kann ich mit Hilfe von [add_camera_reflexion_2] in der *.bus-Datei relativ einfach justieren, dass die Spiegel nicht gerendert werden.


    Sitze ich hinten auf der Rückbank, ist das ein nahezu unmögliches Unterfangen.


    Also geht meine Idee in die Richtung zu detektieren, wo ich sitze. Dann wäre es z.B. möglich, zu scripten:

    Wenn ich als "Mitfahrer" auf der Rückbank sitze, schiebe den Innenspiegel einen Kilometer nach rechts.

    Dann wird er nicht mehr gerendert und die FPS steigen.


    Gruß, Lars

  • Ah okay. Aber warum soll das denn mit [add_camera_relexion_2] nur bei den Außenspiegeln klappen und nicht etwa beim Innenspiegel? Einfach den Wert niedriger machen und er rendert erst ab einer gewissen Nähe.


    Das würde sowieso nicht funktionieren. Die Reflexionen sind fest. Die kann man nicht mal eben verschieben oder ausschalten (mittels Variablen).

  • Ah okay. Aber warum soll das denn mit [add_camera_relexion_2] nur bei den Außenspiegeln klappen und nicht etwa beim Innenspiegel? Einfach den Wert niedriger machen und er rendert erst ab einer gewissen Nähe.

    Die Schwierigkeit dabei ist, dass wenn der Innenspiegel über [add_camera_relexion_2] definiert ist, diese Definition ja für beide Fälle gültig ist: Den Fall, dass ich als "Beifahrer" hinten sitze und den Fall, dass ich als Fahrer den Bus steuere.


    Stelle ich den Wert sehr klein ein, so dass ich als Beifahrer hinten sitzend den Spiegel nicht auslöse, habe ich das Problem, dass ich als Fahrer den winzigen Punkt nicht finden kann, an dem der Spielel noch funktioniert.


    Stelle ich den Wert weniger streng ein, so funktioniert der Spiegel, wenn ich den Bus fahre, aber sobald ich als Beifahrer auf der Rückbank sitzend nur irgendwie in Richtung vorne schaue, löst er aus und die FPS sinken.


    Das würde sowieso nicht funktionieren. Die Reflexionen sind fest. Die kann man nicht mal eben verschieben oder ausschalten (mittels Variablen).

    Das hatte ich nicht bedacht, Du hast völlig recht :-(


    vielleicht gäbe es die Möglichkeit, per script, nachdem man den eigenen Sitzort detektiert hat, das Rendern der Spiegel generell auszustellen? Also so, als ob man in den Optionen die Spiegel abstellt?

    2 Mal editiert, zuletzt von lw12 () aus folgendem Grund: Ein Beitrag von lw12 mit diesem Beitrag zusammengefügt.

  • vielleicht gäbe es die Möglichkeit, per script, nachdem man den eigenen Sitzort detektiert hat, das Rendern der Spiegel generell auszustellen? Also so, als ob man in den Optionen die Spiegel abstellt?

    Eben nicht ?( Das rendern der Spiegel erfolgt in der bus-Datei. Da kannst du in das Script (osc) eintragen was du willst, den Spiegeln geht das nix an.

    Du als Spieler sitzt in Form des Fahrers ja immer am Lenkrad. Der Rest sind lediglich Kameraperspektiven und die kannst du nun mal nicht detektieren. Das einzige, was die Kameraperspektive "benötigt" sind die Objekte... wegen ihrem viewpoint:


    0 = immer; 1 = Draußen; 2 = Drinnen; 4 = nur an der KI


    Da könnte man höchstens mal probieren, die Spiegelfläche auf viewpoint 2 bzw. 3 zu stellen... es wird zwar weiterhin gerendert, aber es zeigt dann nix mehr an. Ich glaube in der F3- und F4-Ansicht, werden die Spiegel ja sowieso nicht mehr gerendert. Aber leider unterscheidet es da nicht ob Spielerfahrzeug oder KI...

  • vielleicht gäbe es die Möglichkeit, per script, nachdem man den eigenen Sitzort detektiert hat, das Rendern der Spiegel generell auszustellen? Also so, als ob man in den Optionen die Spiegel abstellt?

    Eben nicht ?( Das rendern der Spiegel erfolgt in der bus-Datei. Da kannst du in das Script (osc) eintragen was du willst, den Spiegeln geht das nix an....

    in den Omsi Optionen gibt es doch die Einstellung, die Spiegel auf Aus/Ökonomisch/Echtzeit (oder so ähnlich) umzustellen.

    Wenn sich dies per script steuern liesse..., den Spiegel auf aus, wenn man den Passagier auf der Rückbank mimt, da müsste der Spiegel doch aus sein, egal was die *.bus Datei sagt, oder?

  • wenn man den Passagier auf der Rückbank mimt

    Selbst wenn, wie willst du das herausfinden? Du kannst wie gesagt die Kameraposition nicht auslesen.

  • Da könnte man höchstens mal probieren, die Spiegelfläche auf viewpoint 2 bzw. 3 zu stellen... es wird zwar weiterhin gerendert, aber es zeigt dann nix mehr an.

    Hast du das schon versucht?

  • Da könnte man höchstens mal probieren, die Spiegelfläche auf viewpoint 2 bzw. 3 zu stellen... es wird zwar weiterhin gerendert, aber es zeigt dann nix mehr an.

    Hast du das schon versucht?

    Ich werde es austesten.

    Allerdings soll der Spiegel ja gerendert werden, wenn ich selber der Fahrer bin und nicht gerendert werden, wenn ich als Mitfahrer auf der Rückbank sitze.

    Mit viewpoint, wenn ich es richtig verstehe, würde ich pauschal beide Fälle aktivieren, bzw. deaktivieren.



    Ergänzung:

    Ich habe es ausprobiert, leider beeinflusst es, wie Du erklärt hast, die FPS nicht. Das blosse Vorhandensein der Reflektionsangaben in der .bus Datei bewirkt schon das rendern und damit den FPS Einbruch.


    Sinn meiner Aktion ist ja die FPS Steigerung als Mitfahrer.

    Ich habe jetzt noch erfolglos probiert, eine if Abfrage in die .bus Datei um die Spiegel Definition zu setzen, aber die wird von OMSI ignoriert.

    2 Mal editiert, zuletzt von lw12 ()

  • bau dir doch zwei fahrzeugvarianten - eines, das du als KI einsetzt und eins, was du zum selbstfahren nutzt. aus der KI-Variante entfernst du dann die spiegel. dann kannst du das fahrzeug zwar nichtmehr übernehmen, an- und ausschalten von spiegeln je nachdem wo du sitzt ist aber nicht möglich.

  • bau dir doch zwei fahrzeugvarianten - eines, das du als KI einsetzt und eins, was du zum selbstfahren nutzt. aus der KI-Variante entfernst du dann die spiegel. dann kannst du das fahrzeug zwar nichtmehr übernehmen, an- und ausschalten von spiegeln je nachdem wo du sitzt ist aber nicht möglich.

    eine gute Idee.


    :-)