##先下載課本範例
1-1 到https://jsyeh.org/3dcg10/
1-2 下載win32 跟data兩個檔案
1-3 在下載的資料夾,把windows.zip =>windows資料夾
把data.zip裡面的data拉到下載\windows資料夾裡
1-4 開啟Transformation.exe 老師讓我們先了解glScalef
p.s ///設定「清背景」的顏色
glClearColor(1,1,0.9,1);///R,G,B,A
glColor3f 就是R,G,B三個顏色
##開啟課本範例Transformation => 交換translate/rotate兩行程式,感受兩者差異在哪
(下方程式按右鍵,可swap translate/rotate交換)
##理解技巧
把左耳「靠著」左肩,再看程式碼(從下往上看)
glTranslatef=>把「旋轉中、長胖的藍色車子」移到右邊去
glRotatef =>旋轉中、長胖的藍色車子
glScalef =>長胖的藍色車子
glBegin =>藍色的車子
車子
##理解技巧
把左耳「靠著」左肩,再看程式碼(從下往上看)
glRotatef=>把「全部的東西」旋轉
glTranslatef =>放在右邊的高高瘦瘦藍色車子
glScalef =>高瘦的藍色車子
glBegin =>藍色的車子
車子
3-1
(把程式碼由下往上看)
glTranslatef(teapotX,teapotY,0); =>把整個「旋轉中的縮很小的綠色茶壺」移去右邊
glRotatef(angle++,0,0,1); =>旋轉中的縮很小的綠色茶壺
glScalef (s,s,s); =>縮很小的綠色茶壺
glutSolidTeapot(0.3); =>綠色的茶壺
glutSolidTeapot(0.3); =>茶壺
4-1 (把11、12行glTranslatef 跟glRotatef 對調看一下效果)
(把程式碼由下往上看)
glRotatef(angle++,0,0,1); => 把「縮很小的綠色茶壺,移去右邊」整個旋轉
glTranslatef(teapotX,teapotY,0); =>把縮很小的綠色茶壺,移去右邊
glScalef (s,s,s); =>縮很小的綠色茶壺
glutSolidTeapot(0.3); =>綠色的茶壺
glutSolidTeapot(0.3); =>茶壺
5-1
沒有留言:
張貼留言