上周做出了一個有包含關節的人,可記錄動作亦可讀取內容。但目前只能一步一步來,動作不流暢,感覺所有的關節都瞬間移動了。所以這次要來分割動作,將一步變成幾十步。
time: 這個動作到下個動作之前經過了多少時間(例:0.5表示經過了一半) ,數值可以從0到無限大。
alpha: 幾乎跟time一樣,只不過這是為了做運算用的,而且因為牽扯到函式,數值只能在0到1之間。
angle: 一個關節的角度,可以是任何數值。
因為會用到數學函式,我請來了Excel來幫忙計算。
現在來看看這份表格:
如果開始角度是A,結束時角度是B,則各角度為: B*alpha+(1-alpha)*A
alpha數值雖然只能在0到1之間,但是可以被切成無限多份。
0到1之間的數字越多速度越慢,動作會更流暢。
相反地,0到1之間的數字越多速度越快,但動作更不流暢。
如果要做成動畫,這唯一的函數會運用好幾百次!


沒有留言:
張貼留言