萬盛學電腦網

 萬盛學電腦網 >> 圖文處理 >> MAYA教程 >> Maya 交叉伸縮器教程

Maya 交叉伸縮器教程

   Maya 交叉伸縮器教程 在 MAYA 中運用表達式制作交叉伸縮器。

  1 .首先創建一個多邊形立方體,取名 B1 ,作為第一條桿,長、寬、高分別為 0.4 、 10.1 、 0.2 。把它從 Z 軸旋轉一點角度。

Maya 交叉伸縮器教程 三聯

  2 .再建一多邊形圓柱體取名 pin ,就放在原點,並旋轉、縮放調整成如圖:

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  3 .然後復制 B1 立方體,取名 B2 。現在開始表達式了,選擇 B2 ,打開 window-%26gt;Animation Editors-%26gt;Expression Editor 表達式編輯器,在表達式區鍵入 B2.rotateZ = B1.rotateZ * -1 點擊 Create 按鈕。這條語句表示 B2 的 Z 軸角度是 B1 的角度乘以 負 1 ,兩個立方體成為一個剪刀的原理。現在試試沿 B1 的 Z 軸旋轉,會發現 B2 也會向著 B1 的相反方向旋轉。

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  4 .選擇 B1 、 B2 和 pin ,按 CTRL+D 一起復制這三個物體,並向右移動一些距離。多與少不要緊,等會輸入的表達式會幫助修正的。 MAYA 會自動取名的,如不對請改為如圖所示,否則會與下面的表達式不符。

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  5 .選擇 pin1, 在表達式編輯器中鍵入 pin1.translateX = cosd (90-B1.rotateZ)*5 2 -0.2 這條語句用來控制 pin1 隨著 B1 的 Z 軸旋轉而沿著 X 軸平移。 “*5” 是立方體高度的一半 , 最後的 “-0.2” 是因為 cosd 函數是按立方體的頂點來算的,如不減 0.2 ,在運動時兩條桿的末尾會因分開距離太大而不接觸,這是不真實的,所以要 -0.2 使距離小一些。

  無思設計網

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  5-2

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  5-3

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  6 .接下來控制 B3 、 B4 的移動,選擇 B3 ,在表達式編輯器中鍵入 B3.translateX = pin1.translateX 此句將 B3 的 X 軸位置設為 pin1 的 X 軸位置。 B4 同樣 : B4.translateX = pin1.translateX 。 控制旋轉: B3 立方體: B3.rotateZ = B1.rotateZ B4 立方體: B4.rotateZ = B1.rotateZ * -1 如果同一個物體的表達式要連續輸入兩條以上,要在兩條之間加分號 “ ; ” 如: B3.translateX = pin1.translateX ; B3.rotateZ = B1.rotateZ 現在可以旋轉 B1 的 Z 軸來看一看效果了。

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  7 .再來復制多一組,分別取名 B5 、 B6 、 pin2 。選擇 pin2, 在表達式編輯器中鍵入 pin2.translateX = cosd (90-B1.rotateZ)*5 4 -0.2 這條語句用來控制 pin2 隨著 B1 的 Z 軸旋轉而沿著 X 軸平移。這次是乘以 4 ,每復制多一組,就要在前一組數值的基礎上加 “2”, 在第三組時就是 “6” 。道理不用說了吧。 控制 B5 的移動和旋轉: B5.translateX= pin2.translateX ;B5.rotateZ = B1.rotateZ B6 的移動和旋轉: B6.translateX = pin2.translateX; B6.rotateZ = B1.rotateZ * -1

  無思設計網

Maya 交叉伸縮器教程,無思設計網wssj1.cn

  先看看效果。

Maya 交叉伸縮器教程,無思設計網wssj1.cn
copyright © 萬盛學電腦網 all rights reserved