Ajouter une matrice de transformation
Salut !
J'aimerais savoir si il est possible d'envoyer une matrice de transformation a ajouter a celle qui se trouve déjà ?
il me semble que les translations doivent s'ajouter, et pour la matrice de rotation, il se multiplie, c'est bien ca ?
Y a t'il une fonction dans opengl qui fait ca, ou il faut que je le fasse moi meme les calcules ?
Merci
Edit : A non, multiplier les sous-matrices qui correspond aux la matrices de rotation ne marche pas... J'espaire qu'il existe une fonction pour faire se que je souhaite car il y a l'aire d'avoir pas mal de maths en fait...
Edit2 : Comme je suis pas sur d'avoir bien expliqué voici un petit exemple de se que je veux faire :
Au lieu de faire deux rotations successive avec :
Code:
1 2 3
|
glRotated(Alpha, vx, vy, vz);
glRotated(Alpha2, vx2, vy2, vz2); |
j'aimerais faire un truc du genre :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
glLoadIdentity();
glRotated(Alpha1, vx1, vy1, vz1);
glGetFloatv(GL_MODELVIEW_MATRIX, M1);
glLoadIdentity();
glRotated(Alpha2, vx2, vy2, vz2);
glGetFloatv(GL_MODELVIEW_MATRIX, M2);
glLoadIdentity();
/// Ici j'aimerais effectuer les transformation de M1 puis de M2
/// une sorte de :
/// glMatrixMode(GL_MODELVIEW);
/// glLoadMatrixf(M1);
/// glAddMatrixf(M2); /// seulement cette fonction n'existe pas... |
Vous savez si une tel fonction existe ?