在 Blender 裡,使用者可以為物件自訂屬性,再利用這些屬性搭配驅動器來控制或調整模型。比如上圖的時鐘有兩個自訂屬性 Hour 和 Minute,只要輸入幾點(Hour)幾分(Minute),指針就會自動轉到正確的位置。
上圖的時針包含三個物件:時鐘 clock、時針、分針。時針和分針的原點都在鐘面的中心。選取鐘面,到 Properties 視窗的 Object 分頁裡的 Custom Properties 面板,按 [Add] 為時鐘新增一屬性,如下圖:
按 [Edit] 鈕,編輯屬性內容,如下圖:
- 屬性名稱;
- 屬性預設值;
- 屬性最小值;
- 屬性最大值;
- 屬性提示。
接下來為分針增加驅動器:
- 選取分針,為 y 軸旋轉增加驅動器(RMB -> Add single driver);
- 到 Graph Editor 視窗,編輯模式改為 Drivers;
- 選取 Y Euler Rotation 驅動器;
- 按 N 顯示屬性側欄,將既有變數 var 改名為 M;
- 驅動器變數類型選 Single Property;
- 屬性來源物件選時鐘 clock;
- 輸入分鐘屬性 ["Minute"],注意中括號 [] 和引號 "" 不能省略;
- 驅動器類型選 Scripted Expression;
- 在表示式欄位 Expr 輸入分針旋轉角度計算公式 radians(M*6)。
- M : 分鐘數,取自時鐘的 Minute 屬性
- M*6:一小時有 60 分,圓周 360 度,每分鐘旋轉 6 度
- radians():實際上 Blender 在旋轉物件時是以弧度計算,此函數將角度轉換為弧度
時針驅動器會用到時 Hour 和分 Minute 兩個屬性,分別為期指定 H, M 兩個變數。時針轉動角度的計算式為:radians(H*30)+radians(M*6)/12
- H*30:圓周 360 度分 12 小時,每小時旋轉 30 度
- radians(M*6)/12:分鐘數增加的時針旋轉角度
物件控制:Constraints, Custom Properties, Drivers
Blender 學習筆記
留言
張貼留言