Suche Rotations-ACHSEN (X,Y,Z) in DEG von Punkt A zu Punkt B.



  • Ich arbeite mich gerade in die Engine Irrlicht rein und finde momentan leider nicht wirklich die Funktion die ich Suche (einen Animator der mir ein Objekt in Richtung eines anderen Objektes ausrichtet) in der Blender GameEngine gibts dafür den "TrackTo".

    Da dachte ich, das ich es selbst schreibe und komme nun (leider) wieder zu dem Punkt wo ich mit mit Vectoren und Euler rumschlagen muss, ich habe schon versucht in dieser Klasse :

    http://irrlicht.sourceforge.net/docu/classirr_1_1core_1_1vector3d.html#acf7b7537fb389b31478f6385f9eb3043

    eine entsprechende Funktion zu finden aber lande immerwieder bei einer Rotationsmatrix.

    Könnte mir bitte einer einen einfacheren Weg aufzeigen wie ich daraus die resultierenden Winkel für X,Y,Z in DEG (360°) Grad mache damit ich von diesen die aktuellen Rotationswinkel einfach abziehen kann um durch differenz und vorgegebner Zeit eine Animation herzustellen, oder ist das Aufgabe einer Physics-Engine (Dummfrag).

    mfg

    EDIT:

    Hmmm ich glaub ich habs... kann mal kurz wer drüberschauen ob das so stimmt?

    rotationsDifferenz = myNode->getRotation().rotationToDirection(myNode->getAbsolutePosition() + targetNode->getAbsolutePosition()).getHorizontalAngle();
    

    Danke



  • Also ich glaube, in der Klammer sollte target.pos - mynode.pos stehen. Das wäre dann der Vektor wenn man von mynode aus gesehen in Richtung target "schaut".



  • Ach stimmt Danke,

    Ich bin gerade Dabei eine entsprechende Klasse zu Bauen, danke fürs checken 🙂

    mfg


Anmelden zum Antworten