Wurf Mechanismus

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

  • Wurf Mechanismus

    Guten Tag,
    Wie auf dem Bild zu sehen hätte ich gerne eine
    Ball Physik die den Spieler immer trift.
    Sie müsste immmer einen Punkt in der mitte überschreiten dann den Spieler treffen.
    Ich habe leider weniger Ahnung und deswegen wollte ich wissen ob es machbar ist.
    Lg
    Bilder
    • Screenshot_2 (1).png

      7,33 kB, 999×410, 275 mal angesehen
  • Oh, das ist Mathe und da war ich immer ganz schlecht :) , aber, ich könnte mir vorstellen,
    dass man das mit einem Pfad realisieren kann, da Du ja den Spieler immer treffen willst.
    Also, 1. Punkt vom Pfad, dort, wo der Ball startet, 3. Punkt, Koordinaten des Ziels und dann
    einen Punkt in der Mitte der beiden Punkte und beliebiger Höhe(je nachdem, ob der Ball steil
    oder flach geworfen werden soll).
    Dann noch diese Funktion vom Pfad, dass er Punkte nicht gerade, sondern kurvig verbinden
    soll und den Ball auf dem Pfad los schicken.
    Also nur so als Idee, aber es gibt sicherlich noch eine mathematische Lösung und wenn Du Dich
    selber heran traust, dann habe ich hier noch die die nötigen Formeln für Dich:

    virtual-maxim.de/physikuebung-5-schiefer-wurf/


    Miradur
  • Was du willst, nennt man eine Wurfparabel. Miradur hat da schon eine Seite mit Gleichungen verlinkt, auf der Wikipedia gibts auch noch ein kleines Formelblatt. R ist dabei der horizontale Abstand zwischen Spieler und Abwurfpunkt (da kannst du einfach die x-Koordinaten der beiden Objekte voneinander abziehen), y_max ist die Höhe des Wurfes und die restlichen Parameter wie Abwurfwinkel und -geschwindigkeit kommen direkt über die GM-Variablen ball.speed und ball.direction.
    Das Kapitel Mathematische Beschreibung geht noch ein wenig genauer drauf ein.
    Ist allerdings ziemlich viel, naja, mathematische Notation dabei. Ich hoffe, das schreckt dich nicht zu sehr ab. ^^
    Jedenfalls, dein Problem ist: Du kennst den Abstand zwischen den beiden Punkten, du kennst die Wurfhöhe, du kennst die Zeit, in der der Ball ankommen soll und du kennst die Gravitation, die den Ball nach unten zieht. Dir fehlen also noch Abwurfgeschwindigkeit und Abwurfwinkel.
    Eins von beiden solltest du fest wählen - ich empfehle den Winkel, die Formel für die Geschwindigkeit ist dann nämlich deutlich einfacher.
    Wenn ich mich nicht sauber verrechnet habe, solltest du die dann folgendermaßen rauskriegen:

    Quellcode

    1. v = sqrt( (abstand * gravity) / (2*sin(winkel)*cos(winkel)) );
    (Umgeformt aus der Formel für die Wurfweite, mit y0=0 - also Spieler und Abwurfpunkt auf gleicher Höhe).
    Rechne das aber am besten nochmal selber nach, ich kann grad nur mit halbem Hirn denken. ^^
    Hoffe, es hilft trotzdem was.

    Grüße,
    ih3
  • Irrenhaus3 schrieb:

    Was du willst, nennt man eine Wurfparabel. Miradur hat da schon eine Seite mit Gleichungen verlinkt, auf der Wikipedia gibts auch noch ein kleines Formelblatt. R ist dabei der horizontale Abstand zwischen Spieler und Abwurfpunkt (da kannst du einfach die x-Koordinaten der beiden Objekte voneinander abziehen), y_max ist die Höhe des Wurfes und die restlichen Parameter wie Abwurfwinkel und -geschwindigkeit kommen direkt über die GM-Variablen ball.speed und ball.direction.
    Das Kapitel Mathematische Beschreibung geht noch ein wenig genauer drauf ein.
    Ist allerdings ziemlich viel, naja, mathematische Notation dabei. Ich hoffe, das schreckt dich nicht zu sehr ab. ^^
    Jedenfalls, dein Problem ist: Du kennst den Abstand zwischen den beiden Punkten, du kennst die Wurfhöhe, du kennst die Zeit, in der der Ball ankommen soll und du kennst die Gravitation, die den Ball nach unten zieht. Dir fehlen also noch Abwurfgeschwindigkeit und Abwurfwinkel.
    Eins von beiden solltest du fest wählen - ich empfehle den Winkel, die Formel für die Geschwindigkeit ist dann nämlich deutlich einfacher.
    Wenn ich mich nicht sauber verrechnet habe, solltest du die dann folgendermaßen rauskriegen:

    Quellcode

    1. v = sqrt( (abstand * gravity) / (2*sin(winkel)*cos(winkel)) );
    (Umgeformt aus der Formel für die Wurfweite, mit y0=0 - also Spieler und Abwurfpunkt auf gleicher Höhe).
    Rechne das aber am besten nochmal selber nach, ich kann grad nur mit halbem Hirn denken. ^^
    Hoffe, es hilft trotzdem was.

    Grüße,
    ih3
    Danke aber wie setze ich das jetzt ein und wo?