Message #7779
Sujet: shema matrice opengl
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Dernière modification | 20-01-2010 21:07:47 | Gehogor |
Coucou.
Juste au cas où: Une matrice de passage ou homogène est une matrice 4*4 comme indiqué ci-dessous (tu peux la voir aussi comme un repère 3D ou une matrice de positionnement d'un objet dans son monde 3D): 11 12 13 | 14 21 22 23 | 24 31 32 33 | 34
41 42 43 | 44 Les termes 14, 24 et 34 sont respectivement x, y, z, soit ton vecteur translation ou matrice de translation. Les termes 11, 12, 13 et 21, 22, 23 et 31, 32, 33 sont les 9 termes de la matrice de rotation, ou matrice 3*3. Elle donne sans ambiguïté la position angulaire de ton repère par rapport à un autre repère (le repère monde par exemple). Le terme 44 est toujours égale à 1 et 41, 42, 44 sont égaux à 0. Cette dernière ligne est là pour rendre la matrice carrée et donc permettre des calculs d'inversions matricielles. Du coup, lorsque tu multiplies un vecteur (x1, y1 , z1 ,1) par cette matrice, tu obtiens un autre vecteur exprimer dans ce nouveau repère. Ps: OpenGL utilise les termes 41, 42, 43 pour y stocker le vecteur "échelle" en x, y et z respectivement. Pss: Pour des raisons historiques, le z et le y sont inversé dans les moteurs 3D par rapport à la réalité mathématique. Soit, si tu insères des calculs extérieur à Irrlicht, tu dois permuter les lignes 3-4 et les colonnes 3-4. Si tu ne fais que de l'Irrlicht, alors il n'y a pas ce genre de problème. Et oui, les premiers jeux vidéos étaient en 2D codés en x-y, après est venue la profondeur qui devint z, d'où la permutation. Voili voilou. Bonne soirée. |
| Création du message | 20-01-2010 21:06:58 | Gehogor |
Coucou.
Juste au cas où: Une matrice de passage ou homogène est une matrice 4*4 comme indiqué ci-dessous (tu peux la voir aussi comme un repère 3D ou une matrice de positionnement d'un objet dans son monde 3D): 11 12 13 | 14 21 22 23 | 24 31 32 33 | 34
41 42 43 | 44 Les termes 14, 24 et 34 sont respectivement x, y, z, soit ton vecteur translation ou matrice de translation. Les termes 11, 12, 13 et 21, 22, 23 et 31, 32, 33 sont les 9 termes de la matrice de rotation, ou matrice 3*3. Elle donne sans ambiguïté la position angulaire de ton repère par rapport à un autre repère (le repère monde par exemple). Le terme 44 est toujours égale à 1 et 41, 42, 44 sont égaux à 0. Cette dernière ligne est là pour rendre la matrice carrée et donc permettre des calculs d'inversions matricielles. Du coup, lorsque tu multiplies un vecteur (x1, y1 , z1 ,1) par cette matrice, tu obtiens un autre vecteur exprimer dans ce nouveau repère. Ps: OpenGL utilise les termes 41, 42, 43 pour y stocker le vecteur "échelle" en x, y et z respectivement. Pss: Pour des raisons historiques, le z et le y sont inversé dans les moteurs 3D par rapport à la réalité mathématique. Soit, si tu insères des calculs extérieur à Irrlicht, tu dois permuter les lignes 3-4 et les colonnes 3-4. Si tu ne fais que de l'Irrlicht, alors il n'y a pas ce genre de problème. Et oui, les premiers jeux vidéos étaient en 2D codés en x-y, après est venue la profondeur qui devint z, d'où la permutation. Voili voilou. Bonne soirée. |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 539 invités en ligne membre en ligne: - RSS Feed |