因為 Transformation Constraint 處理角度的問題,前一個齒輪動畫只能由齒條帶動齒輪。若要以齒輪帶動齒條,可以用驅動器(Drivers)來解決。Drivers 的功能類似 Constraints,都是以一個物件的屬性來控制另一個物件的屬性,不過 Drivers 能以 Python script 來控制,彈性和功能都勝過 Constraints。
- 選取齒條,在其 x Location 欄位按 RMB 選 Add Single Driver
- 到 Graph Editor 視窗,模式改為 Drivers
- 將變數 var 的變數類型改為 Transform Channel
- 驅動器選齒輪
- 變形通道選 Z Rotation,因為要用齒輪的旋轉來控制齒條的移動
- 驅動方式選 Scripted Expression,用 Python 腳本更精密地控制齒條的移動
- 變數 var 的角度表示方式是徑度,所以要用 Python 的 degrees() 函數將徑度改為角度
- 齒輪每旋轉 15度、齒條移動 0.32 BU的 Python 表示式
留言
張貼留言