2016-03-18 169 views
0

我想改變關鍵按下gluLookAt。例如,我想從頂部,右側,底部和左側看到我的場景,方法是敲擊鍵t,r,b,l。我開始實現從頂部的樣子,但當按下「t」鍵時它似乎不起作用,在我的場景中沒有任何變化。我究竟做錯了什麼?在按鍵上更改gluLookAt。頂部,右側,底部,左側

這是我keyResponder方法:

void CDrawModel::myKeyResponder(unsigned char key, int x, int y) { 
if(key == 27) {        // The ESC key 
    glutDestroyWindow(glutGetWindow());  // kill the window 
    exit(0); 
} 


if (key == 't' || key == 'T'){ 
    gluLookAt(0, 600, 0, 
     0, 0, 0, 
     0, 600, 1); 
    cout << "T ot t pressed" << endl; 
} 

//refresh the screen after every key press... 
glutPostRedisplay(); 
} 
+1

看來你不知道向上的矢量是幹什麼的。 [檢查這個問題。](http://stackoverflow.com/questions/5717654/glulookat-please-explain)除此之外,你張貼的片段太模糊。我們不知道您爲矩陣做了什麼樣的初始化,以及如何渲染場景。 – aslg

回答

1

當你按下的 'T' 按鈕,在你的lookAt向上向量必須是(0,0,-1)。

意思就是說gluLookAt必須有這樣的參數:

gluLookAt(0,600,0,0,0,0,0,0,-1)

建議:嘗試瞭解向量彌補手段風景。

+0

謝謝!將試試這:) –

相關問題