[openGL]: passage coordonnées camera -> globales

: passage coordonnées camera -> globales [openGL] - C++ - Programmation

Marsh Posté le 27-03-2006 à 11:33:34    

Bonjour,
 
je voudrais savoir, en openGL, comment faire pour passer du repere de la camera (avec la camera en (0, 0, 0) et les Z en direction de la vue) au repere global (avec la camera à une position quelconque x y z)...
 
Merci !


Message édité par Fa7 le 27-03-2006 à 11:51:43
Reply

Marsh Posté le 27-03-2006 à 11:33:34   

Reply

Marsh Posté le 27-03-2006 à 11:48:45    

Il faut calculer la matrice inverse de la matrice de changement de repère global=>caméra, et la multiplier par le vecteur qui est dans ton repère caméra. Ainsi tu auras ses coordonnées dans ton repère globale.

Reply

Marsh Posté le 27-03-2006 à 11:55:07    

oui mais comment avoir la matrice de changement de repere (c'est elle que je cherche en fait..) ? c'est la ModelView ?

Reply

Marsh Posté le 27-03-2006 à 13:30:45    

Non, il faut la calculer à priori

Reply

Marsh Posté le 28-03-2006 à 07:53:42    

_darkalt3_ a écrit :

Il faut calculer la matrice inverse de la matrice de changement de repère global=>caméra, et la multiplier par le vecteur qui est dans ton repère caméra. Ainsi tu auras ses coordonnées dans ton repère globale.


 
Pour la matrice de changement de repere, c'est en fait la matrice hessienne de la matrice cree par ton vecteur camera v*transpose(v). Je te conseille vivement d'utiliser les matrices d'Hadamard pour son calcul.

Reply

Marsh Posté le 28-03-2006 à 10:30:34    

y'a pas un truc avec une matrice de Gauss ?

Reply

Marsh Posté le 28-03-2006 à 10:38:37    

_darkalt3_ a écrit :

y'a pas un truc avec une matrice de Gauss ?


J'ai jamais essaye avec Gauss, la complexite est peut-etre trop violente non ? A la limite Jacobi pourquoi pas...

Reply

Marsh Posté le 28-03-2006 à 10:50:45    

c'est vrai que c'est pas léger comme calculs;
cela dit, j'ai jamais essayé autre chose.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed