Anim./CollD./Phys. unter einen Hut bringen



  • OK, ich will ein Bewegungssystem in eine Engine einbaun, und habe dazu einige Fragen, und in den Engines und Tutorials/Papers die ich bis jetzt zu dem Thema durchforstet habe fand ich keine Antwort.

    1.

    Wie bringt man Animation und Collisionsdetection zusammen ! Ich hatte eigentlich vor 3D-Ellipsen (Ellipsoide?) zu benutzen, zum Beispiel für das Player Model. Aber wie wird getestet wenn sich einzelne Teile des Models bewegen, zum Beispiel treten/schlagen/springen, etc...
    Was passiert wenn sich das eigentlich Model normal bewegen könnte, aber durch die Animation würde es z.B. in eine Wand hineintreten. Muss ich dann also für alle Meshes im Model immer eine Collisionsüberprüfung durchführen, oder nur die Model Ellipse ändern (viel ungenauer?)

    2.

    Ich hab einiges über 3D Collisiondetection gelesen, aber alle Paper haben immernur die Translation behandelt.
    Was ist wenn sich zum Beispiel ein riesiger Propeller dreht ? Die einzelnen Vertices beschreiben dann eine Kreisbahn, die ja kein Bewegungsvector ist.

    Ich habe gehört man dazu den direkten Weg benutzen kann wenn man in kleinen Intervallen prüft. Ist das wahr, wie verhält sich das Performancetechnisch/mit der Genauigkeit.

    3.

    Das grösste Problem.
    Ich wollte die Collisionsüberprüfung hauptsächlich mit Ellipsen ausführen, weil die sich gut an Körper anpassen und einfach zu handeln sind.
    Ich habe gelesen das man einfach sämtliche anderen Gegenstände staucht/streckt, so das aus dem Ellipsoiden eine Kugel mit Einheitsradius wird. Danach führt man ne normale Sphere-Polygon Kollisionsberechnung aus.

    Allerdings stand nirgendwo was passiert wenn die Ellipse um mehr als eine Achse gedreht wird. Also schräg im Raum liegt ! Dann kann man imho den Raum nicht mehr transformieren und sie als Kugel betrachten. Wie wird dieses Problem gelöst ?!?!?! Ich meine es gibt soviel über Collisionsberechnung mit Ellipsen, also wird dieses Problem doch sicherlich schon irgendwem aufgefallen sein, oder ?

    Ich bin für jegliche Hilfe in Form von OpenSource-Engines mit CollDetection(die die Probleme lösen die ich habe), Papers, Hinweisen, etc... dankbar.



  • ChaosAngel schrieb:

    Allerdings stand nirgendwo was passiert wenn die Ellipse um mehr als eine Achse gedreht wird. Also schräg im Raum liegt ! Dann kann man imho den Raum nicht mehr transformieren und sie als Kugel betrachten. Wie wird dieses Problem gelöst ?!?!?!

    Na dann drehst du den Raum halt auch, Rotation ist eine Transformation.

    Wenn du deine Objekte durch Ellipsen annäherst, dann zählt das wirkliche Aussehen (also auch die Animation) logischerweise bei der Kollision nicht mehr.

    Bye, TGGC \-/


Log in to reply