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



  • Auf deutsch fällt mit erstmal nur das ein: http://wiki.delphigl.com/index.php/Tutorial_Kollision1

    Sind die Kanten der Würfel parallel zur X-,Y- oder Z -Achse? Dann wäre es ja einfach denke ich 😃

    Ach ja, ein Tut zum Seperating Axis Theorem (2D) gibt es auf der Seite auch in Deutsch



  • Am Anfang ja, aber nach der Kollision nicht mehr, weil der Würfel doch über eine Kante abrollt...



  • Ist dir klar, dass deine Welt bei 4 Byte pro Würfel Speicherplatz 3,8 GB Speicherplatz belegt? Irgendwie stelle ich mir das selbst mit Physik-Hardware-Unterstützung nicht sehr performant vor all diese Würfel miteinander interagieren zu lassen, oder habe ich etwas übersehen?

    Edit: Ich befürchte du musst dich schnell an die englische Sprache gewöhnen. Quasi jedes fortgeschrittene Material das nicht gerade die Basis einer Universitätslehrveranstaltung an einer deutschen Uni bildet in englischer Sprache.

    MfG SideWinder



  • Mario Sandler schrieb:

    http://de.wikipedia.org/wiki/Dunning-Kruger-Effekt

    Lol :xmas1:



  • Die erinnerung schrieb:

    Also wenn ich die Grundlagen nicht schaffen sollte, glaube ich würde es keiner schaffen. Ich habe im Gebiet der Logim einen IQ von 140! Und dass will was heißen!

    Ratschlag für die Zukunft: Wenn man Hilfe braucht, nicht so tun als bräuchte man sie eigentlich nicht :D.



  • Die erinnerung schrieb:

    @pyhax: Danke ich schau mir die Links gleich an.

    @Namenloser342: Ich bin auf der Suche nach jeder Möglichen Hilfe.

    ich arbeite schon seit 2 Jahren mit Komplexen Zahlen, interessiere mich für alle möglichen Gebiete der Mathematik, bin in Mathe und Physik ein einser-Schüler (ohne zu lernen wohlgemerkt), programmiere seit ich 13 bin (in C++), habe Dinge geschafft, bei denen sogar Studierete Erwachsene nicht mehr mitkommen, und du behauptest, dass ich das nicht schaffe soll???

    Also wenn ich die Grundlagen nicht schaffen sollte, glaube ich würde es keiner schaffen. Ich habe im Gebiet der Logim einen IQ von 140! Und dass will was heißen!

    gott bist du eingebildet.
    Naja, viel Glück bei deinem Projekt, vielleicht hast du ja recht/bildest es dir nicht nur ein und du schaffst das wirklich. Gibts ja immer wieder solche Menschen.



  • Die erinnerung schrieb:

    Also wenn ich die Grundlagen nicht schaffen sollte, glaube ich würde es keiner schaffen.
    Ich habe im Gebiet der Logim einen IQ von 140! Und dass will was heißen!

    Man misst den IQ aber nicht nur in einem Gebiet 😉



  • Und 4 Byte pro Würfel, ist das nicht etwas wenig? Man braucht doch mindestens 4 Werte (Einmal die Position und dann noch die Länge der Kante).
    Und die einzelnen Werte werden wohl kaum nur ein Byte belegen.



  • Auch ich habe daran gedacht, dass man nicht alle Würfel in der Gesamten welt prüfen kann.

    Deshalb habe ich die elt (gedanklich) in 10*10*10 große Chunks eingeteilt.
    D.h., dass ich nur in den Chunks rechnen werde, in denen sich ein bewegliches Objekt befindet. Das heißt auch wiederum, dass die Möglichkeiten der Kollisionen mit anderen Flächen sehr gering ist, weil kaum Flächen da sind.

    Und noch ein Trick:

    Falls die Würfel noch nicht "abgebrochen" sind, befinden sie sich in einem festen Raster. und es werden nur die Flächen der Würfel mit in die Rechnungen einbezogen (und gerendert), die relevant sind, also sichtbar. Und sichbar sind nur die, die mit keinem Würfel kollidieren, aslo nur die Außenflächen, was die Rechenleistung deutlich reduziert!

    und @zeusosc: Gesamt bin ich auf 127. Ich bin mir aber nicht mehr sicher.



  • 3,8 GB? Naja, mein Rechner ist zwar schon etwas alt, aber in meinen RAM passt es nicht 😮



  • Walli schrieb:

    Die erinnerung schrieb:

    Also wenn ich die Grundlagen nicht schaffen sollte, glaube ich würde es keiner schaffen. Ich habe im Gebiet der Logim einen IQ von 140! Und dass will was heißen!

    Ratschlag für die Zukunft: Wenn man Hilfe braucht, nicht so tun als bräuchte man sie eigentlich nicht :D.

    Ich kann die Grundlagen aber noch nicht und deshalb bin ich hier. ich weiß auch nicht, wo ich mir solches Wissen aneignen kann.

    So ok. ich habe heute (leider) nicht genug zeit, um mir alles durchzulesen.

    Deshalb.

    1. Wir nehemen an, ich hätte das problem mit der Kollisionserkennung verstanden (das lese ich mir morgen durch und verstehe es dann 😃 )
    2. Wir nehmen an, ich hätte eine 2D-Raum
    3. Jetzt müsste ich wissen, wie amn berechenet, wenn ein solches Quadrat auf eine Kante fällt und überkippt, wie man das berechnent. (erstmal ohne Reibung und elastische Kollisionen) Also ein Quadrat fällt auf eine Kante und kippt über, ohne dass das Quadrat abrutscht, noch dass es wieder zurückspringt.

    kann mir da jemand helfen?



  • Für platzmangel gibt es ja virtuellen Speicher,..

    ist aber nicht gerade performant...



  • Passive Chunks (also, in denen nix passiert) kann man auslagern, den Rest kann man im RAM lassen.

    Mincraft machts ähnlich.



  • Die erinnerung schrieb:

    ... (mit 10 habe ich mir selbst den Schiefen Wurf und mit 12 den Ballistischen Wurf angeeignet (ich bin 16)) ...

    Da sich seine motorischen Fähigkeiten erst sehr spät entwickelt haben, könnte es doch durchaus sein, dass sein Intellekt umso stärker ausgeprägt ist.



  • 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.


Anmelden zum Antworten