Partage
  • Partager sur Facebook
  • Partager sur Twitter

Quaternions - rotation

Rubicube

Sujet résolu
    25 avril 2011 à 22:33:25

    Bonjour,

    Je code actuellement une petite application de rubicube (casse-tête que j'adore), en 3D avec OpenGL.
    Je me suis fait ma petite bibliothèque pour l'affichage, la gestion des scènes... mais là n'est pas le sujet ^^'

    J'ai dû implémenter les Quaternions afin de gérer l'orientation des petits cubes (leur positionnement ne pose pas de soucis, mais leur inclinaison ou autre si).

    Le problème:
    Quand je bouge la même face, quelle qu'elle soit, je n'ai pas de soucis.
    Quand j'ai bougé 2 faces différentes, le cube ne tourne pas bien. (voir screens)

    Je suppose que le problème vient de la multiplication, en effet je multiplie par un quaternion représentant l'axe autour duquel la rotation a lieu, et un angle.
    Existe-t-il un moyen de calculer l'équivalent d'un vecteur x = (1., 0., 0.), y = (0., 1., 0.) ou z = (0., 0., 1.) pour pouvoir bien faire la rotation ?
    En gros, comment fait-on tourner 1 quaternion selon x, y, ou z sans multiplication ??

    screens qui montrent que ça tourne bien sur les 2 cotés:

    Image utilisateur

    Image utilisateur

    Image utilisateur

    Image utilisateur

    Et voilà le bug:
    Pour ces image, le quaternion doit être mal calculé ...
    Image utilisateur

    Image utilisateur
    quaternion finalement calculé, léger pb: mauvaise orientation, le noir c'est l'intérieur du cube !
    Je précise que l'on voit les cubes tourner super vite dans un mauvais sens, transparents parfois (là par exemple xD).

    Voilà ^^
    Je sais pas si vous avez une solution, j'ai regardé pour des histoires d'interpolation mais je ne sais pas comment calculer le quaternion que je souhaite, vu que là c'est çà qui pose pb XD

    En espérant que quelqu'un puisse m'aider ^^'
    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      27 avril 2011 à 11:35:30

      Up!

      Bon en fait j'ai abandonné les quaternions, j'ai utilisé les coordonnées polaires dans des plans, ça marche mais bon c'est moins propre ^^
      • Partager sur Facebook
      • Partager sur Twitter

      Quaternions - rotation

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown