[Spline Movement] Steuerung invertieren

  • Schönen guten Tag,

    ich habe ein Komfort-Problem mit meinem Spline Movement.
    Ich nutze eine Spline um einen 3. Person Charakter über eine Planke balancieren zu lassen.

    Das Problem ist die Steuerung.

    Wenn ich W (vorwärts) drücke, läuft der Charakter Richtung Spline-Ende.
    Wenn ich S (rückwärts) drücke, läuft der Charakter Richtung Spline-Anfang.

    Wenn der Spieler aber vom Spline-Ende Richtung Spline-Anfang laufen will, dann drückt man aus Gewohnheit Vorwärts, da der ja geradeaus laufen soll. Nun dreht sich der Charakter natürlich direkt, da vorwärts ja immer Richtung Spline-Ende läuft.


    Ich hoffe, dass ich es verständlich rüberbringen konnte :D




    Und somit habe ich ein Problem.

    Habt ihr da eine Möglichkeit/Idee, wie ich dieses Problem lösen kann?


    EIne Überlegung war, dass ich irgendwie anfragen kann, ob der Charakter (oder die bewegliche Kamera) in Richtung Anfang oder Richtung Ende der Spline schaut und dem entsprechend die Steuerung umkehren kann. Aber mir fiel keine clevere Lösung für eine solche Abfrage ein.

    • Hilfreich

    EIne Überlegung war, dass ich irgendwie anfragen kann, ob der Charakter (oder die bewegliche Kamera) in Richtung Anfang oder Richtung Ende der Spline schaut und dem entsprechend die Steuerung umkehren kann. Aber mir fiel keine clevere Lösung für eine solche Abfrage ein.

    Hier sollte dir das Dot-Product helfen.


    Ich habe hier bei den Math Hall Content Examples folgendes gefunden.


    "2.14 Dot Product -- An explanation of Dot Product is given which can be used to check if the player is looking at a specific point."


    Hier noch ein Beispiel worum es dabei geht.

    https://docs.godotengine.org/e…tor_math.html#dot-product

  • Ich glaube, dass ist genau das, was ich mir vorgestellt habe!


    Damit kann man abgleichen in welche Richtung die Kamera am ehesten schaut und somit die Steuerung anpassen.


    Super hilfreicher Tipp :)