Ich möchte eine Physik-Engine selber schreiben und brauche Hilfe bei der Physik!



  • Ich sprach von der Physik dahinter...



  • sry ich konnt nich anders 🙂



  • @Die erinnerung: Mal ne Frage, wenn du wirklich so inteligent bist, wie du selber schreibst, warum präsentierst du dich dann hier so?



  • Die erinnerung schrieb:

    Ich sprach von der Physik dahinter...

    Die Physik hinter Kollisionen sind Erhaltungssätze. Energieerhaltung, Impulserhaltung, Drehimpulserhaltung. Das war's schon. Wenn Du die vernünftig mit einander kombinierst, kriegst Du raus, wie sich die Körper nach der Kollision weiterbewegen.



  • Gregor schrieb:

    Die erinnerung schrieb:

    Ich sprach von der Physik dahinter...

    Die Physik hinter Kollisionen sind Erhaltungssätze. Energieerhaltung, Impulserhaltung, Drehimpulserhaltung. Das war's schon. Wenn Du die vernünftig mit einander kombinierst, kriegst Du raus, wie sich die Körper nach der Kollision weiterbewegen.

    Nur bei Stößen extremer form(ideal inelastisch/elastisch)



  • Fang mit 2D an und suche dir Beispiele: Polycolly.zip enthaelt ein recht gutes Tutorial mit miserablem Code. Macht aber nichts, denn soviel Code gibt es nicht. Einfach mal danach suchen und Bescheid sagen, wenn sich diese Datei noch irgendwo im Internet befindet.



  • Anstatt Lennard Jones könnte man für Würfel auch Leicht deformierte (axiasymmetrische) Rechteckpotentiale verwenden.
    Am besten einen Gaußgefitteten /gefalteten,
    dann hätte man jedenfalls einen realitätsnäheren Fall.
    (Die Gegenkraft nimmt, angenommen, exponential mit der Penetrationstiefe zu,
    bevor es zurückfedert.., wird das Maximum des Potentials überschritten deformiert
    sich der Körper (elastisch), ansonsten "federt" dieser ab einen gewissen Zeitpunkt zurück (inelastisch))

    Damit der Würfel durch die Potentialgleichungen resultierend auch
    Rotationsbewegungen ausüben kann, müssen die Felder an drei (linear) unabhängigen
    Punkten innerhalb des Würfels berechnet werden, welche IMMER fix zueinander sind.
    Jeder dieser Punkte hat dann seinen Ort und seine vektorielle Geschwindigkeit
    gespeichert.

    Inelastisch:
    Der Würfel lässt sich also aus drei zueinander festen Vertices (hier ist jetzt
    nicht das Raumelement, sondern wirklich der "Ort", quasi vektor, gemeint. Siehe post vorher.) darstellen.
    Den Ort des Würfels ist der Vektor auf den ersten dieser Vertices. Die Normale
    kannst du aus dem Kreuzprodukt der ersten Beiden erstellen. (Falls benötigt)
    Bei der Berechnung der resultierenden Kräfte ist darauf zu achten, das die Kräfte auf
    den Verbindungslinien der Vertices sich kompensieren, bzw Kräfte in gleicher Richtung gewichtet summieren.
    Die Forderung ist ja, das die Vertices zueineander einen konstanten Abstand haben.

    Elastisch:
    Hier wird es kompliziert: Du musst also auch das Potential verändern,
    d.h. es wird dann nicht mehr axialsymmetrisch sein. Leider geht dies auf Speicherlast.
    Es müssen also noch die Potentiale pro Würfel und jeweils pro Seite gespeichert werden. Das würde ich mir für später aufheben.

    Also ich würde dir Vorschlagen:

    Berechne doch mal einen Kraftstoß auf ein Dreieck mit jeweils einen Maßepunkt
    mit der Masse m an der Spitze.
    Stelle die Bewegungsgleichung auf und ermitle explizit die Gleichung für Ort, Geschwindigkeit und Beschleunigung. 💡

    (und hier bitte posten)

    greetz



  • Namenloser342 schrieb:

    Nur bei Stößen extremer form(ideal inelastisch/elastisch)



  • seux schrieb:

    @Die erinnerung: Mal ne Frage, wenn du wirklich so inteligent bist, wie du selber schreibst, warum präsentierst du dich dann hier so?

    Die Frage wurde schon beantwortet: http://de.wikipedia.org/wiki/Dunning-Kruger-Effekt 😃



  • Am lustigsten finde ich eigentlich, wie hier einige wirklich sachliche Tipps geben. 😃

    @Threadstarter: Schreib wie alle anderen Kiddies auch erstmal ein MMORPG!



  • this->that schrieb:

    Am lustigsten finde ich eigentlich, wie hier einige wirklich sachliche Tipps geben. 😃

    Was ist daran lustig? Das ist selbstverstaendlich. 😉

    Wir hatten vermutlich alle mal unsere Zeit, in der wir vielleicht im Info-Kurs in der Schule bei weitem der Beste waren und dachten, dass das auch jenseits davon so waere und wir sowieso alles besser koennen als die anderen. Wir konnten immerhin besser als der Lehrer programmieren. Ich hatte so eine Zeit zumindest. Die Frage ist, wie man dann seine eigenen Grenzen kennenlernt. Ich halte es in so einem Fall fuer gar nicht so dumm, dass man sich grosse Ziele setzt. ...und dann scheitert man. Das ist ok, so eine Erfahrung muss man mal machen und danach ist man auch gleich etwas demuetiger. 😉 WENN der Threadersteller das ganze nicht gefaked hat, dann ist er in so einer Situation, in der er sich fuer den Tollsten und Besten haelt. Ich finde, er sollte selbst herausfinden, wie weit das geht. Das braucht man ihm nicht einpruegeln.



  • zeusosc schrieb:

    ...
    Also ich würde dir Vorschlagen:

    Berechne doch mal einen Kraftstoß auf ein Dreieck mit jeweils einen Maßepunkt
    mit der Masse m an der Spitze.
    Stelle die Bewegungsgleichung auf und ermitle explizit die Gleichung für Ort, Geschwindigkeit und Beschleunigung. 💡

    (und hier bitte posten)

    greetz

    Ich arbeite an den Berechnungen. Ich denke morgen müsste ich fertig sein. ich habe im Moment kaum Zeit.



  • Gregor schrieb:

    this->that schrieb:

    Am lustigsten finde ich eigentlich, wie hier einige wirklich sachliche Tipps geben. 😃

    Was ist daran lustig? Das ist selbstverstaendlich. 😉

    Wir hatten vermutlich alle mal unsere Zeit, in der wir vielleicht im Info-Kurs in der Schule bei weitem der Beste waren und dachten, dass das auch jenseits davon so waere und wir sowieso alles besser koennen als die anderen. Wir konnten immerhin besser als der Lehrer programmieren. Ich hatte so eine Zeit zumindest. Die Frage ist, wie man dann seine eigenen Grenzen kennenlernt. Ich halte es in so einem Fall fuer gar nicht so dumm, dass man sich grosse Ziele setzt. ...und dann scheitert man. Das ist ok, so eine Erfahrung muss man mal machen und danach ist man auch gleich etwas demuetiger. 😉 WENN der Threadersteller das ganze nicht gefaked hat, dann ist er in so einer Situation, in der er sich fuer den Tollsten und Besten haelt. Ich finde, er sollte selbst herausfinden, wie weit das geht. Das braucht man ihm nicht einpruegeln.

    Ähm danke.

    Ich bin sicher, dass das Projekt am Ende nicht ganz wird, wie ich es hben will aber ich mache das nicht alleine. ich arbeite mit einem ebenso begabten Freund zusammen und wir haben uns aufgeteilt. Ich mache die Physik-Engine er kümmert sich ums Rendern.

    Und wenn das ganze doch scheitern sollte, dann werde ich es nochmal in ein bis zwei Jahren probieren.

    Das Problem, dass Gregor angesprochen hat ist, dass ich bis jetzt auf keine Grenzen in diesem Gebiet gestoßen bin. "Leider" bin ich sehr weit forgedrungen und deshalb suche ich die Grenze sehr weit hinten.

    Und bitte hört mit den blöden Kommentaren auf. Sonst muss ich die noch entferen lassen.

    Und es ist wirklich mein ernst. Wenn wir soweit sind, dass wir unsere Version hochladen können, werde ich den Link hier posten.
    Das wird aber noch dauern, weil wir erst anfangen.

    Bevor Fargen kommen, das Konzept steht bis ins Detail!

    Und ich meine das echt ernst!



  • ScottZhang schrieb:

    Namenloser342 schrieb:

    Nur bei Stößen extremer form(ideal inelastisch/elastisch)

    Doch, sonst braucht man eine Stoßzahl.



  • Das ist nämlich eine 1000*1000*1000 große Welt aus Würfeln, in der man spielt. Und durch das Gameplay soll es möglich sein, dass man in der Welt "rumrandalieren" kann, aslo Würfel zerstören kann.

    Reicht es nicht aus, wenn es so nen Mist ein mal gibt? 😃



  • Namenloser342 schrieb:

    ScottZhang schrieb:

    Namenloser342 schrieb:

    Nur bei Stößen extremer form(ideal inelastisch/elastisch)

    Doch, sonst braucht man eine Stoßzahl.

    Die Erhaltungssätze sind für jegliche Form von Bewegung und Interaktion notwendig,
    egal ob man diese direkt oder indirekt anwendet.

    Und nicht nur für extremfälle...



  • Ich bezog mich auf das "man könnte Stöße damit "berechnen", was nur bei ideal inelastischen bzw elastischen Stößen möglich ist. Natürlich gelten die immer, aber man braucht noch mehr um dinge dazwischen berechnen zu können.



  • Die erinnerung schrieb:

    Das Problem, dass Gregor angesprochen hat ist, dass ich bis jetzt auf keine Grenzen in diesem Gebiet gestoßen bin. "Leider" bin ich sehr weit forgedrungen und deshalb suche ich die Grenze sehr weit hinten.

    Und bitte hört mit den blöden Kommentaren auf. Sonst muss ich die noch entferen lassen.

    Und es ist wirklich mein ernst. Wenn wir soweit sind, dass wir unsere Version hochladen können, werde ich den Link hier posten.
    Das wird aber noch dauern, weil wir erst anfangen.

    Bevor Fargen kommen, das Konzept steht bis ins Detail!

    Und ich meine das echt ernst!

    Trotz deines enormen Intellekts weißt du offenbar nicht, wie du dich verhalten musst, um hier Hilfe zu bekommen statt irgendwelcher Sprüche zu deinem Auftreten. Herrje, sei nicht so eingebildet. Das bringt dich nicht weiter. Weder hier, noch in deinem restlichen Leben.

    Und dafür, dass du so klug bist, schreibst du doch recht einfältig, muss ich sagen.

    So, jetzt entferne mal meinen Kommentar. Bin gespannt. 😃



  • Die erinnerung schrieb:

    Das Problem, dass Gregor angesprochen hat ist, dass ich bis jetzt auf keine Grenzen in diesem Gebiet gestoßen bin. "Leider" bin ich sehr weit forgedrungen und deshalb suche ich die Grenze sehr weit hinten.

    Troll oder einfach nur dumm.



  • Namenloser342 schrieb:

    Ich bezog mich auf das "man könnte Stöße damit "berechnen", was nur bei ideal inelastischen bzw elastischen Stößen möglich ist. Natürlich gelten die immer, aber man braucht noch mehr um dinge dazwischen berechnen zu können.

    Hm, das stimmt. Aber was ist wenn diese Materialgleichungen auch aus Erhaltungssätze kommen ?


Anmelden zum Antworten