im 20° Winkel auf die Wand

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • im 20° Winkel auf die Wand

    Mein Zweitprojekt ist ein Autorennspiel. Ich will nicht das wenn man grade auf die wand zufährt, man einfach nur abprallt und plötzlich in die entgegengesetzte Richtung fährt. Der högste Winkel in dem man aufkommen darf soll 20° sein. Sonst geht man kaputt. Kann man soetwas programieren :?:
    Wenn ja, wie :?:

    Danke an alle im foraus ;)
    Copyraid © 2008 Quantin Danyal. All rights are reversed.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Danyal ()

  • Also, wenn du an den Seiten die Mauer hast und das Auto nach oben fährt, dann kannst du es mal so probieren:

    Auto-Objekt:
    Wand-Objekt collision

    GML-Quellcode

    1. if direction>110 and direction<70
    2. {
    3. direction-=direction-90 //Bin mir jetzt nicht ganz sicher, ob diese Rechnung korrekt ist.
    4. }
    5. else
    6. {
    7. //Auto zerstören
    8. }


    Das ist zwar eine einfache, aber effektive Lösung. Die Kollision sieht allerdings nicht sehr realistisch aus...
    kostenlose Android-Spiele:
    hexavirScribble Triple

    Mr. Peperonico auf Facebook

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von RoFra ()

  • Das auto soll im Kreis fahren... das bringt nich noviel was du da geschrieben hast...
    Copyraid © 2008 Quantin Danyal. All rights are reversed.
  • Puh... das is eigentlich 'ne etwas komplexere Frage...
    Wenn es nur die üblichen quadratischen Blöcke gibt müsste man also zuerst Abfragen an welche Seite des Blocks das Auto gestoßen ist, und dann die directions der Wand (an den Seiten 90° bzw 270° und oben und unten 0/360° bzw 180°) und des Autos vergleichen.

    Oder du könntest für jede Richtung noch zusätzlich ein extra Kollisionsobjekt erstellen, und diese dann jeweils so positionieren, dass man nur von einer Seite dagegen stoßen kann.

    Bei Runden Objekten könnte man einfach die Richtung zwischen Origin des runden Objektes und der Kollision ermitteln, und den orthogonalen Spielraum vermittels direction +/- 90 ermitteln und dann mit der Direction des autos abgleichen.

    Dann wäre da noch die Möglichkeit einzelne mini-Punkte als äußere Begrenzung zu verwenden, dessen x- und y-Koordinaten dann als Richtwerte für Kollisionsberechnungen zu verwenden wären. Das Problem dabei ist: es müssen pro Step recht viele Abfragen ausgeführt werden, was evtl auf die Performence geht.

    Eine letzte Möglichkeit wäre noch die Verwendung von Polygonen als Kollisionskörper.
    Damit kenne ich mich jedoch leider nicht sonderlich gut aus.
    Es sollte aber in etwa so wie die letzte Möglichkeit funktionieren, evtl auch schneller, aber da kann ich dir nichts versprechen.
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Es dürfte reichen, wenn du bloß die Richtung von Automittelpunkt zum Kollisionspunkt im Kollisionsevent des Auto-Objekts prüfst. Natürlich muss das relativ zur Fahrtrichtung geschehen. Deine entsprechenden Winkel kannst du dann abfragen.

    Aber da man sich nicht wirklich viel darunter vorstellen kann, wäre es gut, wenn du mal wenigstens einen Screen anfügen könntest. Die gm6 wäre noch besser.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Original von mauge
    Es dürfte reichen, wenn du bloß die Richtung von Automittelpunkt zum Kollisionspunkt im Kollisionsevent des Auto-Objekts prüfst. Natürlich muss das relativ zur Fahrtrichtung geschehen. Deine entsprechenden Winkel kannst du dann abfragen.

    Aber da man sich nicht wirklich viel darunter vorstellen kann, wäre es gut, wenn du mal wenigstens einen Screen anfügen könntest. Die gm6 wäre noch besser.

    Nope, seh ich anders.^^
    Wenn ich dich jetzt nicht komplett falsch verstanden habe, ist die Direction zwischen Automittelpunkt und Kollisionspunkt für den Winkel unabhängig.
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Stimmt, aber man könnte speziell für die Wandkollision einen Kreis als Maske für das Auto nehmen. Dann dürfte das funktionieren.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Einen Kreis als Maske? oO
    Dann steht der entweder die Maske oder das Sprite (oder beide) an einigen Stellen über, und das würde dann zwar den Winkel in etwa berechnen, aber die sonstige Kollision wäre sehr ungenau.

    Oder hab ich das jetzt falsch verstanden?
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Ja, hast du.^^
    Dieser Kreis sollte schon an den Ecken des Autos abschließen und dient nur der Kollisionsberechnung mit der Wand, bzw. wird anhand diesen Kreises der Winkel vom Fahrzeug zur Wand berechnet.
    Naja, jedenfalls ist das die simpelste Lösung, die mir einfällt. Sicher kann man das auch genauer, aber wesentlich komplizierter gestalten.
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Ok, dann hab ich jetzt keine Ahnung, wie du den Kreis in etwa plazieren willst.
    Sry, ich kann mir das irgendwie gerade so garnicht bildlich vorstellen.^^
    Hier werden sie geholfen:
    [Regeln] [GML] [Hilfe] [Suche] [Posten] [Duden.de]
    [Wenn das alles nicht mehr hilft] [Dunning-Kruger]


    "Die Vernunft sollte Autorität definieren; nicht umgekehrt!"
    "Selber denken regt das Gehirn an."
    - Niffel f.k.a. Kilik
  • Im Grunde ist es ganz simpel, lässt sich aber gar nicht so leicht erklären. Wie gesagt, die gm6 wäre angebracht, um überhaupt erstmal zu wissen, wie man an die Sache heran gehen muss.


    Der blaue Bereich stellt das Fahrzeug dar, der Pfeil die Fahrtrichtung. Wie gesagt, das ist eine sehr simple Lösung. Aber jetzt weißt du, wie ich das meine, oder?
    █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
    █████ ███████ ███ your █████ ████ government.
  • Naja... Ihr redet die ganze Zeit von Autos... Ich mach podrenner (Star Wars, ihr wisst schon, Episode 1, Anakin Skywalker). Die sehen ein bischen anders aus und haben nich so wirklich Ecken und Kanten. (siehe Anhang)

    Kann mir mal einer ein Skript auf gm v5.3 schreiben oder mir zumindest sagen wie ich das selbst machen kann? Danke!
    Bilder
    • Neu Bitmap.png

      470 Byte, 48×48, 172 mal angesehen
    • Neu Bitmap (2).png

      468 Byte, 48×48, 209 mal angesehen
    • Neu Bitmap (3).png

      407 Byte, 48×48, 210 mal angesehen
    Copyraid © 2008 Quantin Danyal. All rights are reversed.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Danyal ()