2023年5月25日 星期四

聯邦圖學院 Week15 投影 運鏡

 Week15

今天先到jsyeh.org/3dcg10上面下載windows data兩個壓縮檔解壓縮之後
把data資料夾丟到windows資料夾裡面

今天我們要開的是projection.exe看一下攝影機怎麼運作
點進去可以看到gluLookAt的部分

第一行是眼睛的位置
第二行是指眼睛看哪裡
第三行是指眼睛怎麼旋轉



















我們可以先用GitBash下載Github上面的2023Graphicsb資料夾
再來我們開心檔案(week15-1_gluLookAt)
由於我們的FinalProject裡面已經有一個freeglut了所以
開心檔案的時候glut資料夾直接選我們2023graphicsb裡面的glut資料夾即可
先看看新開的檔案能不能正常打開
再來我們直接修改原程式碼

在第133行加入以下程式碼

並在第155行加入glutMotionFunc(motion);
執行之後可以直接用滑鼠操作旋轉矩陣的視角














我們再回到Projection來看其他東西
在城市介面點滑鼠右鍵後可以用其他視角觀看













glOtho 垂直投影
glFrustum 透視投影
前者是預設投影而後者會有角度張開的感覺
還有第三個glPerspective 這個參數比較好設定


接下來看到第一行
fovy是指視野張開的角度
aspect是指長寬比

再來我們開心檔案來觀察兩種投影的差異




在第35行這邊加一行glOrtho及gluPerspective並註解掉原本的來觀察不同的投影方法

下面這個是glFrustum














這個是glOrtho















接下來我們再開心檔案(week15-3_gluPerspective_gluLookAt)
再來的程式碼如下:

888
這個是glPerspective



沒有留言:

張貼留言