試圖瞭解gluLookAt,特別是最後3個參數。gluLookAt解釋?
有人能解釋一下嗎?
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 */
- 正是它的 「正Y方向向量」 是什麼意思?
- 是否有可能將最後的向上向量3參數全部設爲1,例如, 1,1,1?而且,如果可能的話,究竟意味着什麼?
- 向上向量的值是否可能大於1,例如: 2,3,4?
謝謝。
還是不太明白。當參數是(1,0,0)vs(0,0,0)vs(0,0,1)時向上矢量的差異是什麼?在網站上找不到任何圖片來幫助我理解。如果有人知道在哪裏可以找到,請告訴我。 – 2011-04-19 14:16:16
@Johnnt:想想你的地板上的某個特定地點的觀察者,朝向門看。現在,那個觀察者可以坐着,躺在他們的左邊,或者躺在他們的右邊。除了他們的位置和他們看的方向之外,你需要知道觀察者頭部的旋轉。 – 2011-04-19 14:36:02
在Ben的解釋之上進一步展開,想象一下帶有頂部天線的相機。這是相機「起來」。作爲一款手持式攝像機,想象一下,您在旋轉攝像機的同時保持指向您的主體!現在,相機可以指向任何方向,甚至是顛倒的!這就是gluLookAt的XYZ座標的原因 - 告訴GL相機被保持的方式。在大部分情況下,0,1,0都可以工作,但如果攝像機直線向上或直線向下看時會出現問題,在這種情況下,0,0,1是一個很好的起點,但您可能想要嘗試。 – Olie 2011-05-30 14:45:40