week16 20220607
小葉老師上課要點:
alpha: 0.5 - 半新半舊
1. 主題: 內插、動作內插
2. 主題: 攝影機、運鏡
3. 實作: gluLookAt()
主題: alpha內插公式 : alpha: 0.0~1.0
*能夠讓動畫進行得更流暢的關鍵
angle = alpha * 新 + ( 1 - alpha ) * 舊
e.g.
alpha: 0 - 舊
alpha: 0.5 - 半新半舊
alpha: 1 - 新的
> 可以使用 Excel or Google Spreadsheet 練習
主題: 用程式試看看 alpha內插公式,讓動畫運行變的流暢
1. 開啟 codeblocks 建新的 GLUT 專案 : week16_interpolation
從上週程式: week15_angles_TRT_angle 做修改
2. 複製程式後,執行
3. 上週程式碼執行結果: 按 r 會讀到動作,但是不連續 ( 動作1馬上跳動作2 )
4. 目標: 讓動畫運行變的流暢,而不是類似很卡的逐格效果 ( 動作1是逐漸自然得變成動作2 )
*發明 myInterpolate() 做新舊值的內插函式
(37行程式碼)每讀到新的值
(23行)原本新的值就會變舊的值
(23-24行)然後進行新舊交換
*為什麼 26行 alpha 不需要 [ ] : 因為他不是陣列,是介於0~1之間的值
5. 要讓 p 還要自己一直按著太遜了,我們要讓他自動播放
* 使用 timer
6. 在 keyboard 函式內加入按下 ' p ' 就會呼叫內插函式 myInterpolate() 然後重畫畫面
*按一次 r ,按一次 p 之後,他就會自己開始做動畫
*使用 timer 函式
主題: 攝影機、運鏡
1. 進入小葉老師的網址 https://jsyeh.org/3dcg10
下載 windows.zip 解壓縮> \windows\Projection.exe
下載 data.zip 解壓縮 > \windows\data\一堆模型們
2. eye : 我(攝影機)看目標 -可以從左邊或是右邊或是任何角度看目標
center : 我(攝影機)看目標的中心點 -看目標的鈕扣或是換看目標的鼻孔
up : 我(攝影機)的方向 -通常(0,1,0)向上拍照,但也可以旋轉角度看、倒過來看





沒有留言:
張貼留言