2017年5月8日 星期一

[電腦圖學]Week11 松賢的上課筆記

本週主題: 

(1.)3D TRT轉動
(2.)矩陣、投影矩陣
(3.)攝影機運鏡
(4.)會動的機器人


1.執行Projection,玩別人的程式(模仿Michael Bay運鏡)


Stpe1:請下載這個連結中的windows,data,glut32.dll三個檔案,並解壓縮執行windows資料夾內的Projection。成功執行後,可以自己調整gluLookAt(0.00,0.00,2.00),其中x軸就是Michael Bay的運鏡。
windows資料夾內要有右邊紅色框框三個檔案,才可以正確執行
Step2:接下來我們要實作這個運鏡效果。首先,下載facebook電腦圖學的freeglut.zip,解壓縮到桌面,然後用CodeBlocks新增GLUT project。
Step3:我們打開小葉老師做好的專案(04160011),執行後可以看到一個茶壺
Step4:仔細觀察紅框框,可以了解到函式裡的9個參數,正好比對到茶壺的視角。

2.運鏡效果講解


FOV(field of view效果)
FOV小
FOV大


gluPerspective其他參數講解

對茶壺作透視投影實作:

法一: 加入上圖紅框框內透視投影函數
法二: 或是開啟小葉老師傳的cpp檔,這個比較厲害,執行後茶壺會旋轉!(藍色框框的作用)
結論: 透過紅框框內的效果,可以達成不破圖的效果(其實也是gluPerspective(60, 1, 0.001, 10000);後兩個參數在搞鬼...哈哈)

2.會動的機器人茶壺(茶壺身體、茶壺手臂)


好的,我們要用TRT轉動來做出關節活動。所謂TRT,就是在pushMatrix()跟popMatrix()中加入Translate + Rotate + Translate
第一個T:將茶壺掛上去
第一個R:旋轉
第二個T:定住旋轉中心
像老師用6個茶壺做出身體跟雙手臂,以後我們期末作品,就是要用這個觀念來讓我們的角色做動作喔!


沒有留言:

張貼留言