Mesh um eigene achse drehen



  • Hi, habe mal wieder ein problem...
    Wie drehe ich ein Mesh welches mit D3DXCreateText erzeugt wurde im die eigene achse? Wie das gehen dreht ist klar, aber wo es hängt ist: wie finde ich raus wie lang/hoch das mesh ist (brauche ich ja um rausfinden um welche achse ich drehen soll -> höhe/2)!?

    😕 😕 😕



  • Was hältst du von:
    - Verschiebe deinen Mesh auf die Achse
    - Drehe deinen Mesh um sich selbst (= um die Achse = World drehen)
    - Verschiebe deinen Mesh wieder zurück

    Alternativ kannst du jedesmal eine Achse erstellen - genau durch die (0,0,0) Position des Meshes - dabei hilft dir D3DXMatrixRotationAxis().

    Muss aber auch sagen, dass ich selber noch am Lernen bin - und kann natürlich nicht sagen ob das optimal ist, ich habs bisher mit dem Verschieben gemacht weils in einem Tutorial so beschrieben wurde. Wo genau benötigst du die Höhe?

    MfG SideWinder



  • CMatt schrieb:

    wie finde ich raus wie lang/hoch das mesh ist (brauche ich ja um rausfinden um welche achse ich drehen soll -> höhe/2)!?

    Niemand sagt, das ein Mesh sich um seinen Mittelpunkt drehen muss. Nimm z.b. eine Tür. Der Grafiker sollte das normalerweise selbst festlegen, entweder durch den Nullpunkt o. ä.

    Bye, TGGC (Für echte Fans)



  • @TGGC: In meinem Beispiel wärs ja beides Mal der Nullpunkt -> nun Frage: Ist zumindest eine der beiden Punkte die von mir aufgezählt worden sind performant? Wie würde man es machen? 🙂

    MfG SideWinder



  • - Verschiebe deinen Mesh auf die Achse
    - Drehe deinen Mesh um sich selbst (= um die Achse = World drehen)
    - Verschiebe deinen Mesh wieder zurück

    :p

    Genau das hatte ich vor, mein Problem:
    - Verschiebe deinen Mesh auf die Achse ---> wo ist das????
    Ich muss irendwie herausfinden wie hoch/lang der text ist der von D3DXCreateText erzeugt wird.

    Damit es noch klarer wird:
    Ich habe nen Text: "bal bal bal" und möchte ihn beim 2. a (nehmen wir mal es genau die mitte des texts) auf der y-achse drehen. Frage: wo ist die mitte von 'a' ? 😉



  • Man berechnet einmal die Matrize und zeichnet dann das gesamte Objekt damit. Ich denke die Berechnung ist nicht der Flaschenhals.

    Bye, TGGC (Für echte Fans)



  • CMatt schrieb:

    Damit es noch klarer wird:
    Ich habe nen Text: "bal bal bal" und möchte ihn beim 2. a (nehmen wir mal es genau die mitte des texts) auf der y-achse drehen. Frage: wo ist die mitte von 'a' ? 😉

    Weiss ich nicht auswendig, müsste man in der Doku nachschlagen.

    Bye, TGGC (Für echte Fans)



  • Jetzt weiß ich wenigstens auf was du hinauswillst *g*

    Berechne die BoundingBox und nimm von der den Mittelpunkt?!

    MfG SideWinder



  • BTW: TGGC hat recht, afaik werden Meshes sehr ausführlich in den DXSDK-Samples gezeigt - sollte sich auch ein Beispiel finden lassen 😉

    MfG SideWinder


Anmelden zum Antworten