gluLookAt explication?
Essayer de comprendre gluLookAt, surtout les 3 derniers paramètres.
Quelqu'un peut expliquer ?
gluLookAt(camera[0], camera[1], camera[2], /* look from camera XYZ */
0, 0, 0, /* look at the origin */
0, 1, 0); /* positive Y up vector */
- Que signifie exactement par "positive Y le vecteur" ?
- Est-il possible d'avoir la dernière mise à vecteur de 3 paramètres comme toutes les 1s, par exemple, 1, 1, 1 ? Et, si c'est possible, que signifie exactement ?
- Est-il possible pour le vecteur de la valeur de plus de 1, par exemple 2, 3, 4 ?
Grâce.
Vous devez vous connecter pour publier un commentaire.
Sketchup à la rescousse!
Votre image a un " up " de ce qui peut être séparé du monde. La fenêtre bleue dans cette image peut être considérée comme la quasi-plane " que vos images est attirée sur: votre moniteur, si vous voulez. Si vous avez d'approvisionnement est l'eye-point et le point, que la fenêtre est libre de tourner autour. Vous avez besoin de donner un supplément de sens à la broche vers le bas. OpenGL va normaliser le vecteur d'alimentation s'il n'est pas unité de longueur. OpenGL projetteront vers le bas de sorte qu'il forme un angle de 90 degrés avec le 'z' vecteur défini par œil et à (sauf si vous donnez un " up " vecteur qui est en exactement la même direction que la ligne de l'œil à 'à'). Une fois "dans" (z) et " up "(y) les directions sont définies, il est facile de calculer le "droit" ou (x) en direction de ces deux.
Dans cette figure, le "fournis" le vecteur est (0,1,0) si l'axe bleu est dans la direction y. Si vous deviez donner (1,1,1), il serait le plus susceptible de faire pivoter l'image de 45 degrés, car c'est pour dire que le haut de la fenêtre bleue doit être pointé vers cette direction. Par conséquent, l'image de l'homme semble être à bout (dans la direction opposée).
3 premiers paramètres sont la position de la caméra
3 paramètres sont la position de la cible
les 3 derniers paramètres représentent le roulement d'appareil-photo.
Chose de très important, l'utilisation gluLookAt après "glMatrixMode(GLMATRIXMODE);"
Autre indice utile de toujours spécifier 0,0,1 pour les 3 derniers paramètres.
En général les coordonnées sont écrites sous la forme x,y,z. z est le vecteur.
le 0,1,0 conduit à la confusion que x,z,y).
donc meilleure chose à laisser 0,0,1.
le dernier vecteur, aussi connu comme les caméras jusqu'-vecteur définit l'orientation de la caméra.
imaginer un bâton attaché en haut d'un "vrai" appareil photo. le bâton de la direction est le vecteur.
en le changeant d' (0,1,0) vous pouvez le faire à côté de laminage.