Physik, Pysik...

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

  • Physik, Pysik...

    So vorher beim Pysik lernen hab ich mir überlegt, etwas im GM umzusetzen.

    Jedes Objekt hat eine Masse, und fällt je nachdem wie schwer es ist fällt unterschiedlich schnell.

    Jedes Objekt bekommt verschiedene Variablen, eben die Masse m,
    die Höhe h, die mit einer Funktion gemessen wird, die Geschwindigkeit und
    die potentielle sowie kinetische Energie.
    ein Meter entspricht übrigens 32 Pixeln.
    So es wird dann die pot. Energie Epot berechnet.
    in einem 2. Script, das im Step Event aufgerufen wird, steht
    if (place_free(x,y+1))
    {
    h = scrGetHeight();
    Epot = m*g*h;
    Ekin += ????;

    v = sqrt(Ekin / 0.5 * m);
    vspeed = v;
    }
    so ich weiß aber nicht, wieviel ich zu Ekin addieren muss
    am Ende muss die kin. Energie ka so groß sein, wie die pot. Energie war.
    Wenn ich einfach 1 nehme, klappt es zwar super, d.h. das Objekt mit 10 Kilo fällt auch schneller als das mit 5)ist aber nicht korrekt.
  • Tut mir leid, aber ich versteh nicht im geringsten was du vor hast und wozu das führen soll. Soweit ich weiß, fällt jeder Körper, unabhängig seiner Masse, mit gleicher Beschleunigung.

    Bitte erklär mal das Problem etwas genauer. Vielleicht geht das ja nur mir so?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Bl@ckSp@rk ()

  • Original von Bl@ckSp@rk
    Soweit ich weiß, fällt jeder Körper, unabhängig seiner Masse, mit gleicher Beschleunigung.so?


    veradmmt, stimmt.
    Ich hatte es erst richtig, hat mich aber gewundert.
    peinlich peinlich ;)

    Edit: Bevor ichs vergess: trotzdem sollte am Ende die kin. E. gleich der pot. anfangs E. sein..ist wichtig

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

  • Original von Bl@ckSp@rk
    v = sqrt(Ekin / 0.5 * m);


    Wenn du hier die Gleichung Ekin = 0.5 * m * v² umstellen wolltest, muss das aber v = sqrt(Ekin*2/m) heißen.


    Einspruch.
    a = b*c*d² | /a*b

    d² = a / b*c


    Zum Verständnis was ich wollte,
    ich wollt sowas in mein J&R einbauen,
    d.h., wenn Spieler eine Höhenenergie von 1000J hat und runterspringt,
    und bei der Hälfte auf nen Vogel platscht, soll der 500 aufn Kopf bekommen
  • btw
    Jeder Körper hat ne andere Beschleuinigung (abhängig von der masse) aber die Endgeschwindigkeit ist bei allen die gleiche.
    Face in the wind, we're riding the storm
    We'll stay our course whatever will come
    ~~ Stay (Running) Wild ~~
  • Original von Gulasch
    Original von Bl@ckSp@rk
    v = sqrt(Ekin / 0.5 * m);


    Wenn du hier die Gleichung Ekin = 0.5 * m * v² umstellen wolltest, muss das aber v = sqrt(Ekin*2/m) heißen.


    Einspruch.
    a = b*c*d² | /a*b

    d² = a / b*c


    Dann muss das aber heißen: d² = a/(b*c) oder d² = a/b/c
    So wie du das geschrieben hast wäre c im Zähler und nicht im Nenner.
  • Original von Bl@ckSp@rk
    Tut mir leid, aber ich versteh nicht im geringsten was du vor hast und wozu das führen soll. Soweit ich weiß, fällt jeder Körper, unabhängig seiner Masse, mit gleicher Beschleunigung.


    [Klugshice]Das gilt nur im Vakuum. Wenn Atmosphäre existiert, gibts auch Reibung mit der Luft, und den Luftwiderstand. Das heißt zum einen, dass die Beschleunigung, sowie die maximale Fallgeschwindigkeit von der Masse des Körpers abhängig ist, und zum anderen, dass durch diese Reibung Energie verloren geht, also E.kin wird niemals so groß sein, wie E.pot. Und selbst wenn es keine Reibung gäbe, würde das nie der Fall sein, denn solange der Körper fällt, also seine Höhe sich immer weiter verringert, wird seine Potenzielle Energie in andere Energie umgewandelt. In dem Moment, in dem er den Boden berührt, ist diese am niedrigsten, die kinetische Energie müsste also am größten sein. Der Witz an der Sache ist nur, dass die kinetische Energie in diesem Moment 0 ist, da sich der Körper dann ja nicht mehr bewegt... (Es sei denn, er springt wieder nach oben...)[/klugshice]

    [size=4](Ich bin mir sicher, in diesem Zusammenhang jetzt noch was sagen zu wollen, aber jetzt fällts mir nich mehr ein...)[/size]
  • Jeder Körper hat ne andere Beschleuinigung (abhängig von der masse) aber die Endgeschwindigkeit ist bei allen die gleiche.


    LOL? Die Beschleunigung aller Körper auf der Erde is GLEICH!
    Der einzige Grund warum ne Feder langsamer fällt als ne Bleikugel ist die reibung (Luftwiederstand)
    Brauche immer noch Grafiken für mein Space-Game (StarAge), Thread zum Game
    Bitte melden!
    Thread zu Resourcen
  • Abgesehen davon ist es mehr oder weniger sinnlos Gesetze eines dreidimensionalen Raums auf einen zweidimensionalen übertragen zu wollen. Da wäre die Perspektive, die Simulation der nichts sichtbaren dritten Dimension...
    Nehmen wir an, du möchtest, dass sich eine Kiste realistisch bewegt. Das tut sie aber nicht, wenn sie sich nur um ihre Z-Achse dreht. Es könnten keine Kisten in den Hintergrund fallen. Zumindest nicht so ohne weiteres...
    Führt man diesen Gedanken fort, muss man feststellen, dass reale Physik nichts in 2D Spielen zu suchen hat. Die Annährungen, die einem geboten werden, ist alles, was man braucht - und die echten Spielspaß bringen.
    Physik hieße ja auch, dass Mario, gemessen an seinem Sprite, kaum 16 Pixel hoch springen kann...Welches Jump'n'Run würde da noch Spaß machen? Ein Spiel ist ein Spiel, weil es die Realität verfremdet und somit eine neue Erfahrung möglich macht. Ausgenommen davon sind auch nicht die Sportspiele, denn mit einem Tastendruck zu passen ist wohl kaum realistisch.
    Ich möchte realistische Physik in Spielen keinesfalls vollständig verteufeln, aber sie sind ein zweischneidiges Schwert.
  • Dem kann ich mich nicht anschließen. Ich finde auch 2D Spiele können relativ realistische Physikengines enthalten. Ich meine: 2D ist doch das selbe wie 3D nur in einer Dimension weniger, sonst nix. Flipperautomaten etwa sind so konstruhiert, dass sie eigentlich nur in zwei Dimensionen funktionieren und entsprechend hatten schon sehr alte Flippersimulatoren am PC eine sehr realistische Physik. Ehrlich: Das Flipperbeispiel ist fast schon ein Beweis dafür, dass eine realistische Physik auch in 2D nützlich und manchmal sogar wichtig ist.

    Und falls dir das nicht reicht: Spiel mal "Soldat". Da gibt's Ragdoll, Rotation von Objekten, eine relativ realistische Kugelballistik. Und Worms, hat es nicht auch etwa viel davon, dass alle Objekte dort gewissen physikalischen Regeln folgen? Na also!

    Übrigens denke ich auch, dass man einfach die vordefinierte Gravitation des Gamemakers um einige Faktoren ergänzen sollte, anstatt sein eigenes System einzuführen.

    Und nochmal zum Thema REALE PHYSIK:
    Je größer die Maße eines Objekts, desto mehr Energieaufwand ist nötig um es zu bewegen. E=mc², alles klar? Aber: Die Beschleunigung aller Objekte ist identisch, unabhängig davon, ob's jetzt ein Marmorbildnis Lenins ist oder eine leere Kondomverpackung, alle Objekte werden mit identischer Geschwindigkeit beschleunigen (im Falle von Gravitation). Jedes Objekt hat eine eigene Gravitation und diese bewirkt, dass es nicht nur mehr Energie voraussetzt um bewegt zu werden, sondern auch die Erde quasi an sich heranzieht. Letzten Endes also ist die Beschleunigung aller Objekte gleich. In der Atmosphäre jedoch gibt's halt den Luftwiderstand und dieser verursacht, dass die Beschleunigung gebremst wird oder sogar eine Maximalgeschwindigkeit erreicht wird, was es paradoxer weise ja garnicht geben sollte, krank wah?

    Das führt mich aber zu nem komischen Fazit: Die Physik dermaßen realistisch zu machen hat wenig sinn, da die Luftzirkulation, Thermodynamik und was weiss ich alles stimmen müsste. In dem Sinne: Nimm doch einfach die echte Erdbeschleunigung für die meisten Objekte, für einige Ausnahmen verfälschst Du sie. Und aus die Maus!

    (Tschuldigung wegen der Klugschießerei, aber bei allen obrigen Antworten war ich irgendwie unzufrieden)

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

  • Original von F4LL0UT
    Dem kann ich mich nicht anschließen. Ich finde auch 2D Spiele können relativ realistische Physikengines enthalten. Ich meine: 2D ist doch das selbe wie 3D nur in einer Dimension weniger, sonst nix. Flipperautomaten etwa sind so konstruhiert, dass sie eigentlich nur in zwei Dimensionen funktionieren und entsprechend hatten schon sehr alte Flippersimulatoren am PC eine sehr realistische Physik. Ehrlich: Das Flipperbeispiel ist fast schon ein Beweis dafür, dass eine realistische Physik auch in 2D nützlich und manchmal sogar wichtig ist.

    Und falls dir das nicht reicht: Spiel mal "Soldat". Da gibt's Ragdoll, Rotation von Objekten, eine relativ realistische Kugelballistik. Und Worms, hat es nicht auch etwa viel davon, dass alle Objekte dort gewissen physikalischen Regeln folgen? Na also!

    Das ist aber a) über weite Strecken keine Schulbuchphysik, sondern Annährungen, von denen ich auch klar unterschieden habe. Bei einem Flipperautomaten ist das natürlich ne gewisse Ausnahme, da wir in einem sehr kleinen Maß nur denken müssen - aber ich denke, hier ging es primär um Jump'n'Runs.
    Meine Aussage ist außerdem nicht, dass Physik nichts in Spielen zu suchen hat, sondern dass der Ansatz der falsche ist, wie man zu dieser kommt.
    Das Abtippen von Physikformeln wird im 2D Bereich nur einen äußerst eingeschränkten Erfolg haben. Geschätzte Annährungen sind da gefragt, bei denen einen natürlichen solche Beobachtungen helfen können. Am Ende statte ich meine Kiste ja eh mit so einer Masse aus, dass sie so fliegt, wie ich es will. Warum mache ich mir dann überhaupt Gedanken über die Masse? Da kann ich gleich die Gravitation ändern.

    Ich kenn die Perspektive von Soldat nicht, aber Worms z.B. hat sich drehenden Wind. Der Wind beeinflusst allerdings in keinster Weise eine Tiefenbewegung - die gibt es in Worms einfach nicht. Dann ist es sinnlos, sich irgendwelchen Formeln hinzugeben, die sich um Form, Richtung udn Angriffsfläche Gedanken machen, wenn das Geschoss am Ende eh mit einer konstanten Verschiebung versehen wird.
    Unsere Physiktheorien und Formeln mögen uns helfen, solche Dinge zu simulieren, aber alles darüber hinaus ist wie mit Kanonen auf Spatzen zu schießen - es ist praktisch immer eine Verschwendung von Zeit.